前些天因为需要写了类似如下的代码

window.onload=Init;
function Init(){
    var getAnswer;
    if(window.name!='yes'){
        getAnswer=window.prompt("问题","答案");
    }
}
//.......................................................

除了在ie8下不能弹出对话框外,其它浏览器都没有问题。这个问题让我困惑了一个晚上,一直没有弄明白,在ie下debuger,输出window对象的属性,可以看得到有prompt这样一个方法(见下图,在ie下debuger输出window对象,查看它的属性),可是却怎么也不弹出对话框,单步调试明明是看到有执行,却不见对话框,很无奈!

在与朋友讨论中,在stackoverflow上查到这样一篇文章,其中解释了为什么。详见:http://stackoverflow.com/questions/10197147/prompt-with-internet-explorer-8

原来,这和ie8的设置有关!

从图中可以看到真是被禁止了!不得不让人吐糟ie了。

posted on 2012-10-13 01:53  Icrt  阅读(1390)  评论(2编辑  收藏  举报