一个页面里要包括几个产品的内容,因此使用了iframe,把产品的内容放在iframe里面,点击不同的tab就能显示对应的产品。但在IE和360浏览器上多点几次tab后,整个页面就卡死了。打开浏览器的开发者工具(F12),抛出了SCRIPT70: 没有权限 jquery-1.9.1.min.js(4,5220)的错误,如下图:
上网搜了下,有不少网友也遇到这样的问题。即在iframe中,当子页面操作父级页面的元素时,操作多次就会遇到这个问题。
据说是jQuery的原因,jQuery的早期版本中如:jquery-1.9.1.js, $('#iframe').attr('src', url); 会出现这样的问题,有可能是其存在BUG。我去查看了下自己的代码,确实有这样类似的一句,主要作用是为iframe的src属性赋值。
解决方法:1.升级为jquery-1.11.1.js;2.iframe的操作用原生js。
因为对js还不算熟练,写起来相对耗时间,而项目又比较赶,因此选择了第一种解决方法,升级jQuery的版本。注:在jQuery官网的http://code.jquery.com/jquery-version.js上找历史版本,只要把version修改成你需要的版本号即可。