2014-03-24 137 views
1

我有一個動態元素被轉換爲對話框小部件。我希望它自動消失。JQuery-ui,自動隱藏對話框

此代碼無法使用。

$("<div>...</div>").dialog({ 
    open : function(eve, ui) { 
    var item = this; 
    window.setTimeout(function(item) { 
     item.dialog('close') 
     }, 
    6000); 
    } 
}); 
+2

嘗試'$(本)'...? – CBroe

+1

嘗試刪除項目作爲parm到最內層的功能。只需編寫function(){...}。該參數會遮蓋先前定義的變量項目。 – Godisemo

+0

我做了@CBroe - 不工作 – yossi

回答

3

夫婦的問題 - 你的選擇看上去錯..也,你試圖通過「項目」,向其中覆蓋你項目的setTimeout =這個..也$(這)是通過設置項目是什麼意思=本;

$("div").dialog({ 
    open : function(eve, ui) { 
    var item = $(this); 
    window.setTimeout(function() { 
     item.dialog('close'); 
    }, 
    6000); 
    } 
}); 

繼承人快速小提琴:http://jsfiddle.net/jFIT/qZggc/

+1

謝謝。它現在的作品 – yossi

+0

@Yossi高興地幫助:) –

0

使用此;

$("<div id='mydialog'>...</div>").dialog({ 
    open : function(eve, ui) { 
    window.setTimeout(function(item) { 
     $('#mydialog').dialog('close'); 
     }, 
    6000); 
    } 
}); 

這裏的工作演示:jsfiddle