我在 firebug 上不断收到此错误 - > TypeError: window.open is not a function
代码:
$(document).ready(function()
{
$('.div').click(function()
{
var link = $(this).data('link');
window.open(link);
});
});
那个功能不应该起作用吗?
我在 firebug 上不断收到此错误 - > TypeError: window.open is not a function
代码:
$(document).ready(function()
{
$('.div').click(function()
{
var link = $(this).data('link');
window.open(link);
});
});
那个功能不应该起作用吗?
迟到了,但对于所有其他编码员!如果您有一个名为“open”的全局变量,例如“open = true;” 或“var open = true”或类似的东西,那么函数“open()”将不再工作。
尽管您的问题并不完全清楚,但值window.open
不是只读的,因此可以由其他代码更改,例如:
window.open = false;
// ...
window.open('something') // error: window.open is not a function
如果您知道页面上加载了哪些脚本,这应该不难做到,只需搜索与window.open
.
尝试这个
window.open("https://www.google.com/", "_blank");
这段代码对我来说很好用。如果这不起作用,请确保您不应该声明以“open”命名的变量或函数。(我曾经遇到过这个问题。)
我不知道为什么,但下面的变化在你的小提琴中对我有用。
改变
var link = $(this).attr('data-link');
window.open(link);
如果你有一个名为“window”或“open”的局部变量,那么函数“window.open()”将不再工作。
如果您在 chrome 控制台中尝试过并发现它不起作用,请尝试将其作为页面预加载的脚本。它在我的情况下有效。