Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/441.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript弹出窗口-适用于FF&;Chrome在IE中失败_Javascript_Html - Fatal编程技术网

Javascript弹出窗口-适用于FF&;Chrome在IE中失败

Javascript弹出窗口-适用于FF&;Chrome在IE中失败,javascript,html,Javascript,Html,我似乎不明白为什么下面这个简单的弹出窗口在IE9中不起作用。FF&Chrome弹出窗口与预期一致,但IE在单击链接时似乎没有做任何事情。我尝试了IE9调试器,但没有得到任何有用的信息 在标题部分: <script type="text/javascript" language="JavaScript"> function JSPopup(linkref) { window.open(linkref,"Report Definitions","width=600

我似乎不明白为什么下面这个简单的弹出窗口在IE9中不起作用。FF&Chrome弹出窗口与预期一致,但IE在单击链接时似乎没有做任何事情。我尝试了IE9调试器,但没有得到任何有用的信息

在标题部分:

<script type="text/javascript" language="JavaScript">
    function JSPopup(linkref) {
        window.open(linkref,"Report Definitions","width=600,height=480");
        return false;
    }

函数JSPopup(linkref){
打开(linkref,“报告定义”,“宽度=600,高度=480”);
返回false;
}
在正文中:

<a href="#" onClick="JSPopup('./Web Report Definitions.html')"> <strong>Report Definitions</strong> </a> 

谢谢你的帮助


Filip

这是IE6安全更改的一部分。现在,您只能在用户启动的事件中调用“window.open”。例如,您的代码将在元素的onclick事件中工作。“window.open”MSDN页面显示:

此方法必须使用用户启动的操作,如单击链接或选项卡指向链接并按enter键,以打开弹出窗口。Internet Explorer 6中的弹出窗口阻止功能可阻止未经用户启动而打开的窗口

例如

function popUpWin(url,wtitle,wprop){
   if (!window.open){ return; } // checking if we can't do this basic function

   // Kill if(win), since win was a local var this was a usless check
   var win = window.open(url,wtitle,wprop);

   // next line important in case you open multiple with the same 'wtitle' 
   // to make sure the window is reused and refocused.
   if (win && win.focus){ win.focus(); }

   return false;
} 

原来问题出在弹出窗口的名称上-IE不允许空格,FF&Chrome do:

window.open(linkref,"Report Definitions","width=600,height=480"); 
需要更改为:

window.open(linkref,"ReportDefinitions","width=600,height=480"); 
这可以跨浏览器工作


Filip

您在
报告定义“
之后缺少逗号和开头双引号。很抱歉,这是发布时的复制粘贴错误。代码中有逗号和开头引号。IE会阻止这种类型的弹出窗口吗?不,它可以弹出窗口-结果是一个空间问题,窗口中的弹出窗口名为。Open此处似乎不是这样,因为在html链接上单击onclick之后调用了JS。用户正在单击此链接,因此上述内容不适用,因为这是用户发起的操作。