Javascript window.open 什么都不做,不产生错误
Javascript window.open does nothing, produces no error
所以我被要求在每次用户加载页面时生成一个新窗口的地方使用它。所以我在标签中创建了以下代码...
<SCRIPT TYPE="text/javascript">
function popup(mylink, windowname) {
if (! window.focus) return true;
var href;
if (typeof(mylink) == 'string') {
href = mylink;
} else {
href = mylink.href;
window.open(href, windowname, 'width=400,height=200');
}
return false;
}
</SCRIPT>
和 onLoad 函数以在页面加载时创建弹出窗口
<body onLoad="popup('http://yahoo.com', 'ad')">
但是,什么也没发生。不会创建选项卡,也不会创建新窗口,并且通过Firebug查看时,不会产生任何错误。在chrome,Firefox和IE9上尝试这样做,结果相同,没有一个浏览器抱怨他们阻止了弹出窗口。我在这里错过了一些非常简单的东西吗?
如果mylink
是一个字符串(在你的例子中是这样(,你永远不会调用window.open
:
if (typeof(mylink) == 'string') {
// Code takes this path
href = mylink;
} else {
// Not this one
href = mylink.href;
window.open(href, windowname, 'width=400,height=200');
}
话虽如此:如果您修复此问题,您将收到弹出窗口阻止程序的警告/错误。浏览器会阻止网站打开弹出式窗口,除非直接响应用户操作(如点击(。网站在页面加载时打开弹出窗口是原因之一。
旁注:typeof
是一个运算符,而不是一个函数。操作数周围不需要括号。
相关文章:
- object响应时出现对象错误javascript
- 未捕获的语法错误:javascript对象上出现意外的标记ILLEGAL
- Phonegap-Android 4.4-html5音频长度错误(javascript和媒体插件)
- 未捕获的语法错误:javascript中出现意外的标记}
- 如何从 MVC4 链接调用 Javascript 方法(错误 JavaScript 运行时错误:对象不支持此操作)
- 未捕获类型错误javascript方法
- 将字符串返回到类型为“0”的输出字段;数字“;针对用户错误javascript
- 解析器错误(Javascript初学者寻找解决方案)
- IE 错误 .JavaScript 运行时错误:对象不支持属性或方法“preventDefault”
- appendChild 不是函数错误 (JAVASCRIPT)
- 错误 JavaScript 函数
- 而循环抛出错误JavaScript
- 意外的类型错误 - Javascript,多维数组
- 语法错误:Javascript 中的意外令牌/将数据发布到 Amazon s3
- 语法错误:Javascript 中缺少指数
- 错误“JavaScript 运行时错误:查找滚动位置时无法获取未定义或空引用的属性'scrollLeft'”
- 错误 JavaScript 循环数组
- 错误:Javascript 上的 [对象对象]
- IndexedDBShim.js错误:JavaScript运行时错误:在严格模式下不允许分配只读属性
- 在Evernote listNotebooks API上获取错误-Javascript/Node.Js