启动Thickbox onload而不是单击

时间:2009-11-26 09:36:39

标签: jquery thickbox

我想启动jquery 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>

当我点击上面的链接时,会出现一个方框..

但在身体上没有出现厚盒子..

请帮忙解决这个问题..

提前致谢...

问候 日元

4 个答案:

答案 0 :(得分: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)

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()。这就是我们必须封装内容的原因。

答案 2 :(得分: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>

这应该模拟点击链接并在加载页面时为您打开厚箱。

答案 3 :(得分: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>