如何检测IE'脚本化Windows'的安全设置是否已启用/禁用

时间:2013-08-21 23:08:03

标签: javascript security internet-explorer

在IE的安全设置中,有一个“脚本”设置“允许网站使用脚本化窗口提示信息”。

我正在尝试使用“confim()”对话框作为大型数据库更新的简单确认(在它们发送之前)。但是在调试alert()的外观(或缺少)时也是如此。

如果安全设置设置为禁用,则确认失败(与用户选择“取消”相同)。

我想知道是否有办法以编程方式确定设置是否被禁用(在实际的confirm()调用之前)并且只是在那种情况下执行提交。确认真的只是一个精确的。

2 个答案:

答案 0 :(得分:0)

有问题的设置适用于window.prompt()方法,不会影响window.confirm()方法。

在没有实际调用方法的情况下,无法从JavaScript检测该设置的状态。

答案 1 :(得分:0)

我确实'有点'想出一种方法来确定是否通过测量返回调用所花费的时间来显示window.prompt()。如果它小于100毫秒,则用户可能从未看过它(即它被禁用)。

  

100ms ==(基于第二条规则的第10个任意数字:即   平均人类对用户界面做出反应的时间   最佳情况)

var start = (new Date).getTime();
var data = prompt("test","test");
var diff = (new Date).getTime() - start;
if( diff < 100 )
{
 // no prompt
}
else
{
 // prompt was displayed
}