我需要在窗口模糊事件上触发一个jquery对话框。但由于页面中存在多个框架的框架集,因此不会抛出对话框。所以我在其中一个框架中创建了一个空div,并附加了生成的对话框。现在它只抛出一次对话框。但是每次使用窗口发生模糊事件时我都需要抛出它。
提前致谢。
浏览器:Chrome,Firefox和IE9。
包括Jquery lib:jquery-1.3.2.js,jquery-ui-1.7.2.js,jQuery-ui-1.7.2.css
更多信息:
我在第二帧中创建了这个空div
<div id='testpop'></div>
并在常见的js文件中使用以下代码来触发模糊事件
$(window).blur(function() {
ConfirmBox();
});
function ConfirmBox() {
var timer;
$('<div id="confirm" style="display: none"><p>Are you sure?</p></div>').dialog({
closeOnEscape: false,
resizable: false,
position: top,
width: 500,
modal: true,
open: function(event, ui) {
timer = setTimeout(function() { alert("Logout"); }, 30000);
},
buttons:
{
"Logout": function() {
alert("Logout");
},
"Resume": function() {
$(this).dialog("close");
clearTimeout(timer);
}
}
});
if ($(window.frames[1].document)) {
$('#testpop', window.frames[1].document).html($('#confirm').parent());
$('#testpop', window.frames[1].document).show();
}
}
基于此代码,它会在页面中抛出一次对话框,用于第一次模糊事件。下次模糊事件未正确触发。
如果我遗漏了代码中的任何内容,请告诉我。