2014年12月21日   码农之路   2,239 次浏览
在高版本的IE浏览器中使用jquery时有时候就会出现”Array”未定义,”jQuery”未定义,”$”未定义等等这类错误,但是在chrome,firefox,ie6,ie7等其他浏览器上都是可以正常运行。
为什么?这是因为IE高版本的浏览器在兼容性上做了较严格的控制导致的,特别是当一个页面上嵌套了多层iframe/frame的时候(本人就是这种情况)。
在网上查了判断资料得来的解决方法,设置meta属性,但是没效果:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8"/> |
后来无意间修改代码发现这个问题没了:
$("#main_iframe").attr('src', '/user/view/index.html'); |
之前这个src是直接写在iframe属性中的,改成通过jquery来设置就好了。
猜想原因:当有iframe嵌套时,父页面与子页面同时打开,这时对jquery的初始化就会冲突,改完后子页面再打开时就不会再初始化jquery了(jquery在初始化时有个对象是否已经存在的判断)。
>>> Hello World <<<
这篇内容是否帮助到你了呢?
如果你有任何疑问或有建议留给其他朋友,都可以给我留言。