[英]Jquery Delay After Click
我正在創建一個網絡應用程序......
我有一種游戲,我的想法是當用戶完成每個級別時出現一個帶有一些信息的對話框,很好。
現在我的問題是我想在用戶點擊完成按鈕5秒后顯示此消息。
那就是我的代碼:
$('#option-main-menu').click(function(){
target.append('\
<div id="confirm">\
<h1>Are You Sure Want to Exist?</h1>\
<a href="#" id="dialog-confirm">Yes</a><a href="#" id="dialog-cancel">No</a>\
</div>\
');
});
我也嘗試使用append().Delay(10000)
但不起作用。
提前致謝。
使用setTimeout()
,延遲為5000毫秒。
$("button").click( function() { console.log("clicked...waiting..."); setTimeout( function() { alert("Called after delay."); }, 5000); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <button type="button">Click Me</button>
出於好奇,你為什么要在提示用戶響應某個動作之前等待5秒? 那是很長一段時間; 足夠長的時間讓他們點擊了其他一些東西(如果沒有別的話)。
您可以嘗試使用setTimeout()
。
例子 。
setTimeout(function(){
// do stuff here, in your case, append text
}, 5000);
5000
可以替換為確定延遲長度的任何時間值(以毫秒為單位)。
你不能推遲追加。 你只能延遲動畫。 您可以使用setTimeout
或顯示最初隱藏的元素,然后將其淡入:
$('<div id="confirm" style="display:none"> ...')
.appendTo(target)
.delay(5000)
.fadeIn(1000);
嘗試:
$('#option-main-menu').click(function(){
setTimeout(
function(){
target.append('\
<div id="confirm">\
<h1>Are You Sure Want to Exist?</h1>\
<a href="#" id="dialog-confirm">Yes</a><a href="#" id="dialog-cancel">No</a>\
</div>\
');
}
, 5000);
});
$("button").click( function() { console.log("clicked...waiting..."); setTimeout( function() { alert("Called after delay."); }, 5000); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <button type="button">Click Me</button>
這會奏效
$("button").click(
function() {
console.log("clicked...waiting...");
setTimeout(
function() {
alert("Called after delay.");
},
5000);
});
$yourThing.click(function(){
setTimeout(function(){do your thing here},5000)
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.