我用dialog box 我更愿意用jsfiddle问我的问题,但我没有在jsfiddle中使用它。 所以我在这里放了demo。
如果我在visibility:hidden;
块中不使用#dialog
,当url参数不等于'dialog'时,页面中会显示#dialog div。但只有在url = dialog
时才必须显示它
如果我在#dialog中使用visibility:hidden;
内容,则不显示div。
另外,我希望在10分钟页面加载后打开它。我将把setTimeout
放在哪里?
答案 0 :(得分:1)
您应该使用display:none而不是visibility:hidden,因为可见性会使您的元素不可见。您也可以将setTimeout放在任何您想要的位置,具体取决于您希望它何时开始计数。在dom准备好之后?在window.load之后?等
$(function(){ // this waits for dom to be ready
setTimeout(showdialog,10000);
});
答案 1 :(得分:1)
你需要这样的东西:
function showdialog() {
$( "#dialog" ).dialog({width:500,height:240});
};
$(function() {
var lockation = document.location.toString();
if(lockation.indexOf("url=dialog", lockation.length - "url=dialog".length) !== -1)//check if url ends with 'url=dialog'
setTimeout(showdialog, 1000);//call function with timeout
});
$(function(){...})
- 相当于jQuery.ready
(你正在使用的body.onload的jQuery替换)
此外,代替visibility:hidden
使用display:none
;
http://jsfiddle.net/97LXc/5/这个演示(没有url =对话框)。
http://jsfiddle.net/97LXc/7/ url =对话框模仿
<强> UPD 强>
好吧,一旦你已经在服务器上填充onload="javascript:showdialog()"
取决于URL,就不需要像我那样在客户端上测试url。
而不是onload
打印
$(function() {
setTimeout(showdialog, 1000);//call function with timeout
});
在showDialog
定义