Determining if JQuery effects are still executing

2020-05-26 03:27发布

问题:

For running Cucumber specs with Capybara and Selenium, I need to be able to determine if certain JQuery effects have completed before I can continue with the next step. Is there a generic way to determine if JQuery is still executing effects (e.g. something like $.effects.active.size == 0)?

回答1:

You can check if element is used by some animation plugin/feature via checking :animated selector

according to this: http://api.jquery.com/animated-selector/

like this:

$("#el").is(":animated")

more info: How do I find out with jQuery if an element is being animated?



回答2:

As an alternative option (maybe it will suit somebody else needs), it's possible to completely disable the animations on page (until the is refreshed) by applying:

$('body').append('<style> * {transition: none!important;}</style>')