簡體   English   中英

使用setTimeout延遲腳本

[英]Delaying my script with setTimeout

我想做的是:延遲將特定的哈希值附加到URL的腳本。

為什么這樣做:我有一個jQuery動畫,該動畫必須(而且必須)在添加URL之前觸發。

我已經讀過有關setTimeout的信息,但是我無法使其正常工作。 我當時以為我可以在動畫出現后延遲,但是我在這條路線上沒有看到太多文檔。 相反,我嘗試采用延遲腳本中下一行代碼(碰巧是URL附加代碼)的通用方法。 為了取得良好的效果,我在下面放了動畫和附加代碼。

function animate() {
    $(".class").animate({height: "100%"}, 
    $(".class").addClass("open");
}

animate(); // animate the bar up.

//append the url with the comment number and a hash.
var new_hash ="#"+split_comment_number;



var delay = setTimeout(function() {window.location.hash = new_hash;},1500);

最簡單的方法是僅使用animate的回調。 一旦動畫完成,它將觸發:

$(".class").animate({height: "100%"}, 5000, function(){
    // DO IT HERE
});

您可以在動畫函數中提供回調,動畫完成后立即觸發:

像這樣:

$(".class").animate({height: "100%"}, 1000 /* duration */, function(){ /*Do something*/ });

http://api.jquery.com/animate/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM