Rapid clicking breaks slideshow #770

Closed
TheDragon opened this Issue May 24, 2012 · 11 comments

Comments

Projects
None yet
6 participants
@TheDragon

This has been recreated on the example page on the jquerytools website.
If someone clicks rapidly, it puts the slideshow out of sync. Skipping to the next item too quickly, or alternating between going the normal wait time, then too quickly between items. This was not a problem in 1.2.5, and only recently became a problem when we upgraded to 1.2.7.

@alibby251

This comment has been minimized.

Show comment Hide comment
@alibby251

alibby251 May 26, 2012

Contributor

Hi TheDragon,

I've had a look at this - it does seem to go out of kilter as you suggest. Could you please confirm:

  1. Where you using the recommended version of jQuery on the Slideshow, which is 1.7.1 or above?
  2. Did you get the same effect when pressing play to start it off, or did you click the arrows first? (I want to see if there's any effect that changes what happens, if the autoplay functionality is - or isn't - invoked).
  3. You say you've tried it using 1.2.5 - i) which version of jQuery did you use, and ii) was this for an older project, or one that you were working on now, as a comparison to using 1.2.7?
Contributor

alibby251 commented May 26, 2012

Hi TheDragon,

I've had a look at this - it does seem to go out of kilter as you suggest. Could you please confirm:

  1. Where you using the recommended version of jQuery on the Slideshow, which is 1.7.1 or above?
  2. Did you get the same effect when pressing play to start it off, or did you click the arrows first? (I want to see if there's any effect that changes what happens, if the autoplay functionality is - or isn't - invoked).
  3. You say you've tried it using 1.2.5 - i) which version of jQuery did you use, and ii) was this for an older project, or one that you were working on now, as a comparison to using 1.2.7?
@TheDragon

This comment has been minimized.

Show comment Hide comment
@TheDragon

TheDragon May 29, 2012

  1. It looks like we're using jQuery 1.6.1
  2. We're using it in a carousel that is set to autoplay.
  3. I've copied the slideshow code from 1.2.5 in to the 1.2.7 library to temporarily fix the problem, which it does. So the current working combo for us is jQuery 1.6.1 with Slideshow 1.2.5. This is for an older project, but not older than a few months.
  1. It looks like we're using jQuery 1.6.1
  2. We're using it in a carousel that is set to autoplay.
  3. I've copied the slideshow code from 1.2.5 in to the 1.2.7 library to temporarily fix the problem, which it does. So the current working combo for us is jQuery 1.6.1 with Slideshow 1.2.5. This is for an older project, but not older than a few months.
@alibby251

This comment has been minimized.

Show comment Hide comment
@alibby251

alibby251 May 31, 2012

Contributor

Ah ok - I'll do a file compare on 1.2.5 against 1.2.7, to see if I can spot anything different.

One small thing - the reason for asking the version of jQuery you are using, is because Tools 1.2.7 has to use jQuery 1.7 or above - changes were made to the bind() keywords in jQuery, which I believe are being replaced with .on(). AFAIK, .on() isn't backward compatible, or at least if it is, it's not going to be perfect?

Contributor

alibby251 commented May 31, 2012

Ah ok - I'll do a file compare on 1.2.5 against 1.2.7, to see if I can spot anything different.

One small thing - the reason for asking the version of jQuery you are using, is because Tools 1.2.7 has to use jQuery 1.7 or above - changes were made to the bind() keywords in jQuery, which I believe are being replaced with .on(). AFAIK, .on() isn't backward compatible, or at least if it is, it's not going to be perfect?

@TheDragon

This comment has been minimized.

Show comment Hide comment
@TheDragon

TheDragon Jun 11, 2012

The only thing I'd noticed in difference, at least with slideshow, was that there were a couple of new features added and some minor method changes. It didn't seem like anything that would cause the odd sync issue.

The only thing I'd noticed in difference, at least with slideshow, was that there were a couple of new features added and some minor method changes. It didn't seem like anything that would cause the odd sync issue.

@reissy88

This comment has been minimized.

Show comment Hide comment
@reissy88

reissy88 Jun 25, 2012

Yes this is an issue, I'm not using any of the new updates since 1.2.5.

jQuery 1.6.4 on 1.2.5 works well but using jQuery 1.7.2 with 1.2.7 is full bugs and issues including the issue above.

Yes this is an issue, I'm not using any of the new updates since 1.2.5.

jQuery 1.6.4 on 1.2.5 works well but using jQuery 1.7.2 with 1.2.7 is full bugs and issues including the issue above.

@seybsen

This comment has been minimized.

Show comment Hide comment
@seybsen

seybsen Jul 12, 2012

Why is this issue tagged "more info"? What do you need to fix it?

It's reproduceable on your examplepage:
http://jquerytools.org/demos/tabs/slideshow.htm

  1. Press play
  2. Fastly click the three circle buttons

Effect: The interval of the slideshow plugin switching to next tab gets out of sync.

seybsen commented Jul 12, 2012

Why is this issue tagged "more info"? What do you need to fix it?

It's reproduceable on your examplepage:
http://jquerytools.org/demos/tabs/slideshow.htm

  1. Press play
  2. Fastly click the three circle buttons

Effect: The interval of the slideshow plugin switching to next tab gets out of sync.

@reissy88

This comment has been minimized.

Show comment Hide comment
@reissy88

reissy88 Jul 31, 2012

Any news on this Issue ?

Any news on this Issue ?

@camslice

This comment has been minimized.

Show comment Hide comment
@camslice

camslice Jan 14, 2013

bump

bump

@evrard

This comment has been minimized.

Show comment Hide comment
@evrard

evrard Feb 27, 2013

I think this bug does not belong to slideshow plugin but on tabs.

The current index assignement belong to the callback passed to the effect, but the tabs.next()/prev() methods does not care about this assignement. So, on frantic clicks, the first time next() is called, it loads current+1 pane, and the second time, because the current index has not been updated yet, it re-load the same pane (current+1), while the current pane is now hidden.

I am looking for a fix on the tabs source.

Loops

evrard commented Feb 27, 2013

I think this bug does not belong to slideshow plugin but on tabs.

The current index assignement belong to the callback passed to the effect, but the tabs.next()/prev() methods does not care about this assignement. So, on frantic clicks, the first time next() is called, it loads current+1 pane, and the second time, because the current index has not been updated yet, it re-load the same pane (current+1), while the current pane is now hidden.

I am looking for a fix on the tabs source.

Loops

evrard added a commit to evrard/jquerytools that referenced this issue Feb 27, 2013

Fixes #770
This update add a lock flag that will avoid multiple click() call while the effect is not over. This fix solve the angry clicks on slideshow forward/backward buttons and probably more issues.

Another way to solve multiple click() issues would be to stack click() call and execute them one after the other.
@evrard

This comment has been minimized.

Show comment Hide comment
@evrard

evrard Feb 27, 2013

Pull request : #958

This update add a lock flag that will avoid multiple click() call while the effect is not over. This fix solve the angry clicks on slideshow forward/backward buttons and probably more issues.

Another way to solve multiple click() issues would be to stack click() call and execute them one after the other.

evrard commented Feb 27, 2013

Pull request : #958

This update add a lock flag that will avoid multiple click() call while the effect is not over. This fix solve the angry clicks on slideshow forward/backward buttons and probably more issues.

Another way to solve multiple click() issues would be to stack click() call and execute them one after the other.

evrard added a commit to evrard/jquerytools that referenced this issue Mar 1, 2013

Fixes #770

This update add a lock flag that will avoid multiple click() call while the effect is not over. This fix solve the angry clicks on slideshow forward/backward buttons and probably more issues.

dev commit from jquerytools#958

evrard added a commit to evrard/jquerytools that referenced this issue Mar 4, 2013

Fixes #770
This update add a lock flag that will avoid multiple click() call while the effect is not over. This fix solve the angry clicks on slideshow forward/backward buttons and probably more issues.

Attemps dev pull request
@alibby251

This comment has been minimized.

Show comment Hide comment
@alibby251

alibby251 Apr 25, 2013

Contributor

I've committed evrards' fix to the dev branch - please test this and come back if there is still an issue.

Contributor

alibby251 commented Apr 25, 2013

I've committed evrards' fix to the dev branch - please test this and come back if there is still an issue.

@alibby251 alibby251 closed this Apr 25, 2013

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment