好的,我正在疯狂。 我正在尝试实现一个基本的弹出窗口来显示图像。 如果我的javascript代码在具有onclick属性的HTML标记中完全指定,则窗口会正确弹出。 如果我的完全相同的javascript代码从HTML文档开头的脚本标记或从单独的js文件中调用,则链接(或在我的情况下为图像)不会在弹出窗口中打开,而是在同一窗口中打开。 <沮丧>
这不会弹出一个窗口:
任何帮助都将不胜感激。
PS:在Chrome和Firefox中进行了测试。
编辑:
我发现了我的问题。我最初只在head标签中调用了js文件。当使用多个模板工具(在我的情况下是Template Toolkit)创建的div层时,会出现一些关于原始脚本元素在head元素内看似不可见的深层子元素的问题。
我不知道究竟发生了什么,也没有时间去探索它。我添加了这个编辑,以防其他人遇到类似的问题,并偶然发现了这个线程。如果有人理解这种现象并能够解释它,请务必这样做。
编辑2: window.open方法的“name”参数不能包含空格,否则弹出窗口在IE中无法工作。谢谢M$。
这将打开一个弹出窗口:
<a href="test.jpg" onclick="window.open('test.jpg','test_name','width=500,height=500,scrollbars=no'); return false">test_name</a>
这不会弹出一个窗口:
function cleanPopup(url, title) {
window.open(url, title, 'width=500,height=500,scrollbars=no');
return false;
}
<a href="test.jpg" onclick="return cleanPopup('test.jpg', 'test_name')">test_name</a>
任何帮助都将不胜感激。
PS:在Chrome和Firefox中进行了测试。
编辑:
我发现了我的问题。我最初只在head标签中调用了js文件。当使用多个模板工具(在我的情况下是Template Toolkit)创建的div层时,会出现一些关于原始脚本元素在head元素内看似不可见的深层子元素的问题。
我不知道究竟发生了什么,也没有时间去探索它。我添加了这个编辑,以防其他人遇到类似的问题,并偶然发现了这个线程。如果有人理解这种现象并能够解释它,请务必这样做。
编辑2: window.open方法的“name”参数不能包含空格,否则弹出窗口在IE中无法工作。谢谢M$。