我的代码非常简单
$('.opennewwindow').click(function(e) {
e.preventDefault();
window.open("http://www.stackoverflow.com")
/*alert('its works');*/
});
<button class="opennewwindow" value="somevalue">Open new window!</button>
不幸的是,代码不起作用(函数调用,但不是open.window)。错误不会出现任何问题。
我也是这样尝试的:
$('.opennewwindow').click(function(e) {
e.preventDefault();
myWin = window.open("http://www.stackoverflow.com");
myWin.focus();
});
并跟随错误TypeError: myWin is undefined
。
我使用了$(document).ready()
等。但效果相同。
线索是我的网站上有一个ajax脚本。此按钮和功能也由ajax加载。
任何人都知道为什么这不起作用?
答案 0 :(得分:4)
您的第一个代码正常运作。 见http://jsfiddle.net/69a1cL1v/
它可能是一个弹出窗口阻止程序。
$('.opennewwindow').click(function(e) {
e.preventDefault();
window.open("http://www.stackoverflow.com")
/*alert('its works');*/
});
答案 1 :(得分:2)
哦,伙计我做了什么!
我只是(在我的自定义jquery脚本中)覆盖函数&#34;打开&#34; ...我不知道为什么我这样做(它是未使用的函数)。对不起,我很抱歉。
答案 2 :(得分:0)
工具&gt;选项,内容区域,&#34;高级&#34; &#34;启用JavaScript&#34;右侧的按钮应该给你允许这种行为的选项。如果您使用的是Linux,导航可能会略有不同。
注意,通常认为最佳做法是允许用户选择应该关注的窗口。
这是关于:配置你指的是:dom.disable_window_flip
在FF中,我可以通过向window.open提供窗口名称和选项参数,然后调用焦点来打开一个具有焦点的新窗口。
var wi = window.open('http://www.stackoverflow.com', 'window_name', 'height=200,width=200');
wi.focus();
对于Chrome支持,您必须查看:Google Chrome "window.open" workaround?