[英]jquery: how can I stop appendTo from happening instantly?
我一直在谷歌搜索並試圖讓我的生命延遲 appendTo 立即發生,這樣我就可以先做一個很好的淡出。 這里,myObject 是一個鏈接:
<a href="#">My Link</a>
我想把它移到一個無序列表中:
<div id="newDiv">
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</ul>
</div>
通過做這樣的事情:
myObject.fadeOut(300).appendTo('#newDiv ul').fadeIn(300);
myObject.wrap('<li></li>');
我知道 appendTo 雖然不是 animation object,但它會立即發生。 所以我嘗試將 append 作為 fadeOut 的回調:
myObject.fadeOut(300, myObject.appendTo('#newDiv')).fadeIn(300);
myObject.wrap('<li></li>');
只是現在它不僅立即發生,包裝不再起作用。 我也嘗試過使用 setTimeout 來延遲追加無濟於事。
嘗試這個:
myObject.fadeOut(300, function() { $(this).appendTo('#newDiv ul').fadeIn(300) });
通過在淡入淡出的回調中執行“appendTo”,您可以等到淡入淡出完成。 所有(據我所知) jQuery animation 效果都采用這樣的回調。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.