谷歌浏览器window.onload事件不响应,Safari,Firefox都可以。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了谷歌浏览器window.onload事件不响应,Safari,Firefox都可以。相关的知识,希望对你有一定的参考价值。
<script type="text/javascript">
window.onload = function()
$("#iframe").contents().find("#css2").hide();
;
</script>
<iframe id="iframe" src="iframein.html" frameborder="0" width="200" height="200"></iframe>
代码如上,想法是:加载完毕后隐藏iframe中的一块内容。
Safari,Firefox全都正常。而chrome并没有隐藏。
后来用ie,发现ie也不行。
chrome错误提示:
Uncaught DOMException: Failed to read the 'contentDocument' property from 'HTMLIFrameElement': Blocked a frame with origin "null" from accessing a cross-origin frame.
console.log("window.onload func");
应该是操作iframe里的内容时出问题了,
可能是在执行onload方法时iframe里的内容还没有加载完成,建议监听一下iframe的onload事件再执行操作 参考技术A 这时 你操作iframe 不支持 和window.onload 没有关系。
再说 不建议用window.onload 要用也要用addEvent 否则 是个祸害 参考技术B 试试把onload方法中内容放到
$(document).ready(function()
// 代码放这里
); 参考技术C 这个 不能操作iframe吧 参考技术D 那就是浏览器兼容性问题了
页面OnLoad事件绑定
window.onload=message();
这种写法在程序运行到这句时,先执行message()函数,然后将message的返回值赋给window.onload。
window.onload=message;
这种写法是在网页加载完成后,调用message()方法。
建议使用window.onload=函数名;
这种写法,不容易出错。
window.onload=函数名();有些浏览器不买单。
以上是关于谷歌浏览器window.onload事件不响应,Safari,Firefox都可以。的主要内容,如果未能解决你的问题,请参考以下文章
window.onload 与 $(document).ready() 的区别