[英]javascript declare function with timeout
我有喜歡的javascript,我想為此函數參數設置時間延遲。這是我的簡單函數
function mopen(id)
{
mcancelclosetime();
if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
ddmenuitem = document.getElementById(id);
ddmenuitem.style.visibility = 'visible';
}
在這里我想用id設置超時延遲
id應該像這樣延遲打開
function settimeout(mopen(id),1000)
{
}
但是我的這個嘗試不起作用,請幫我如何做
更新資料
這是我的循環功能
function hideshow(span) {
hideDiv();
var div = document.getElementById("DIV_" + span.id);
if (div.style.display == "none")
setTimeout(div.style.display = "block",2000);
else
div.style.display = "none";
}
你能現在告訴我如何設置div成為一個塊的超時時間嗎?我已經設置了它但是不起作用
在傳遞給setTimeout()
的匿名函數中調用mopen()
setTimeout()
。
var t = setTimeout(function() {
mopen(id)
}, 1000);
那行不通,您可以簡單地做到這一點。 在您的情況下,您定義了一個稱為setTimeout的函數(不是必需的),該方法已在瀏覽器的Javascript標准庫中提供。
setTimeout( function(){mopen(id)}, 1000);
通常你可以做
setTimeout( yourFunction, 1000);
可以完美運行,但是當您必須在setTimeout中將參數傳遞給函數時,可以使用第一個版本,例如在匿名“ function(){}”調用中調用它。
答案已經給出了(我想不是您所期望的那樣)。 重寫為
function hideshow(span) {
hideDiv();
var div = document.getElementById("DIV_" + span.id);
if (div.style.display == "none")
setTimeout(function() { div.style.display = "block" }, 2000);
else
div.style.display = "none";
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.