Стог сена не должен знать об игле, и игла не должна знать о стоге сена. Искатель должен знать об обоих, но должен ли стог сена знать, как искать себя, основное назначение в конкуренции.
, Таким образом, я пошел бы с соединением 2 и 3; стог сена должен быть в состоянии сказать кому-то еще, как искать его, и искатель должен быть в состоянии использовать ту информацию для поиска стога сена.
вы можете использовать метод stop ()
HTML:
<input type="button" value="fade out" id="start">
<input type="button" value="stop" id="stop">
<div style="background-color: blue; height: 100px;">Testing</div>
JS:
$("#start").click(function() { $("div").fadeOut("slow"); });
$("#stop").click(function() { $("div").stop(); });
edit: Приведенный выше код протестирован и работает в FF3.5 и IE8
Используйте это на элементе, анимацию которого вы хотите прервать.
Просто помните, что элемент прекратит анимацию в середине анимации. Поэтому вам может потребоваться сбросить CSS после остановки, в зависимости от ваших обстоятельств.
edit2: Начиная с jQuery 1.7 были внесены некоторые обновления. Теперь вы можете группировать очереди анимации по именам. Таким образом, метод stop ()
примет логическое значение или строку в качестве первого параметра. Если это логическое значение, оно очистит / не очистит все очереди. Но если вы укажете строку, она очистит только анимацию в этой группе очереди.
вы можете просто остановить () перед перезапуском анимации
$("#start").click(function() { $("div").stop().fadeOut("slow"); });