2009-11-26 34 views
1

我想啓動一個jquery thickbox onload而不是點擊。爲此,我使用下面的代碼。啓動Thickbox onload而不是點擊

<script language="javascript"> 
    tb_show("HAI","#TB_inline?height=240&amp;width=405&amp;inlineId=hiddenModalContent&amp;modal=true",null); 
</script> 

實際鏈接

<a href="#TB_inline?height=240&amp;width=405&amp;inlineId=hiddenModalContent& 
amp;modal=true" class="thickbox">Change Name</a> 

當我點擊出現上述link..thick箱..

但對身體的onload粗框沒有出現..

請對此有幫助..

在此先感謝...

問候 日元

回答

0

如果你有你的錨在頁面上某處的鏈接,你可以這樣做:

<script> 
$.ready(function() { 
    $("#thickBoxLink").trigger("click"); 
} 
</script> 

<html> 
<body> 
<a href="#TB_inline?height=240&amp;width=405&amp;inlineId=hiddenModalContent&amp;modal=true" id="thickBoxLink" class="thickbox">Change Name</a> 
</body> 
</html> 

這應該模擬點擊鏈接,開闢ThickBox的支持你的頁面已加載。

4

你的代碼應該工作。也許嘗試把它放在jQuery的document.ready 例如

<script language="javascript"> 
    $(document).ready(function() { 
     tb_show("HAI","#TB_inline?height=240&amp;width=405&amp;inlineId=hiddenModalContent&amp;modal=true",null); 
    }); 
</script> 
+1

親愛的,我正在應用您的建議解決方案,但在加載屏幕上昏暗但不顯示頁面! –

+2

@ShahidGhafoor請使用窗口而不是文檔。我也嘗試了它的工作方式。 –

+2

請注意,有時您需要使用$(window).load才能正常工作 - 例如,當試圖在wp-admin上打開內聯模式時,document.ready未剪切它。 – jammypeach

0

這與Matt Frear建議您可以複製和粘貼以進行測試的解決方案相同。我更改了thickbox參數,但可以根據需要進行更改。

<html> 
<head> 
    <link rel="stylesheet" type="text/css" media="screen" href="http://jquery.com/demo/thickbox/thickbox-code/thickbox.css" /> 
</head> 
<body> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js" type="text/javascript"></script> 
<script src="http://jquery.com/demo/thickbox/thickbox-code/thickbox-compressed.js" type="text/javascript"></script> 

<script type='text/javascript'> 
$(document).ready(function() { 
    tb_show('HAI','http://microsoft.com?KeepThis=true&TB_iframe=true&height=350&width=520'); 
}); 
</script> 

</body> 
</html> 
2

Uffff!最後,我已經整理出來了,我認爲你的div內容類似
<div id="hiddenModalContent" style="display:none">My Content</div>
試試這個而不是上面的那個
<div id="hiddenModalContent" style="display:none"><div>My Content</div></div>
這應該解決這個問題。請注意,你必須通過HTMl元素將內容封裝在「hiddenModalContent」中,例如, <div>...</div><p>...</p>

因爲在thickbox.js文件中他們使用.children()而不是.html()。這就是我們必須封裝內容的原因。