我在我的javascript中使用了一个模态对话框,它在每个特定时间后打开和关闭。我也使用onblur事件如下:
$(window).blur(function()
{
document.title = 'blurred';
});
我注意到只要显示模态对话框,就会始终只在IE11 / IE9浏览器中调用onblur事件。
以下是模态弹出的代码
function getOverflowStatusOfDatabase()
{
$("#dialog").dialog({
modal: true,
title: "Confirm Backup",
resizable: false,
width: 300,
height: 150,
open: function (event, ui) {
$(".ui-dialog-titlebar-close", ui.dialog | ui).hide();
delay = setTimeout(function () {$("#dialog").dialog("close"); setTimeout(getOverflowStatusOfDatabase,8000);}, 8000);
},
buttons: {
Ok: function () {
clearTimeout (delay);
$(this).dialog("close"); //closing on Ok
},
Cancel: function () {
clearTimeout (delay); // Close the message box and overwrite using Cancel button
$(this).dialog("close"); //closing on Cancel
}
}
});
}
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery UI Dialog - Modal confirmation</title>
<script type="text/javascript" src="jquery.min.js"></script>
<script src="jquery-ui-1.8.6.overcast.min.js" type="text/javascript"></script>
<link href="jquery-ui-1.8.6.overcast.css" rel="stylesheet" type="text/css" />
<script src="../Js/Js_Wrs_OverflowDatabase.js"></script>
</head>
<body onload="getOverflowStatusOfDatabase();">
<div id="dialog" style="display: none">
This dialog will automatically close in 5 seconds.
</div>
</body>
</html>
实际上我正在放置这个HTML页面&amp;远程服务器中的java脚本。 我的远程服务器是运行Linux的arm板,有一个IP地址。使用IP地址我从我的计算机访问HTML页面并执行它。
实际上,当我在本地PC而非远程服务器上执行脚本时,不会调用onblur事件。
在某些情况下,当显示模式弹出窗口时会调用onblur事件,这是真的吗?我能预防吗?
谢谢和问候, Sudipto