手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >编写兼容IE和FireFox的脚本
编写兼容IE和FireFox的脚本
摘要:一、正式表达式问题试图用以下表达式提取中括号“]”后面的内容,连接调用以下代码在IE下正常,FireFox则总是会用单数行的内容替代双数行的...

一、正式表达式问题

试图用以下表达式提取中括号“]”后面的内容,连接调用以下代码在IE下正常,FireFox则总是会用单数行的内容替代双数行的内容。

(/(])([^ -}]*)/ig).exec(srcText);

newtext = "[部门]" + RegExp.$2;

后证实问题出在“ig”的“g”上,FireFox把RegExp当全局变量来处理,且没有及时更新$2,这种问题实在莫名其妙。

二、移除Select的条目

IE支持select.options.remove(index),FireFox却是select.remove(index),兼容的方法是select.options[i] = null;

三、showModalDialog

FireFox可以showModalDialog的了,不过如果showModalDialog出来的页面套了个frame,frame的页面取window.dialogArguments可以成功,FireFox不行,要用window.parent.dialogArguments来取。

四、childNodes

FF没有children,要兼容用childNodes,但IE和FF解释不一致,FF将空白文本、换行当成节点,为避免childNodes(index)取得的节点正确,HTML标识间不要有空格或换行 。

五、removeChild

FF中不能和node.removeNode(true),改为node.parentNode.removeChild(node)。

六、outerHTML

FF没有node.outerHTML,在调用node.parentNode.innerHTML来特别处理,若只是添加事件响应或设属性值,可直接element.onclick = function(){callxxx(x,y);}

七、script域问题

此问题原因不详,FF用<script type="text/javascript" src="inc/lib.js"></script>调用外部JS,在内部script中调用lib.js中的函数时,报告函数未定义,IE则无此问题。

【编写兼容IE和FireFox的脚本】相关文章:

JQuery分屏指示器图片轮换效果实例

浅析JavaScript作用域链、执行上下文与闭包

Ctrl+Enter提交内容信息

js兼容火狐获取图片宽和高的方法

网页中移动的广告效果 鼠标悬停

Node.js的MongoDB驱动Mongoose基本使用教程

让innerHTML的脚本也可以运行起来

名词解释:JavaScript、Jscript、VBScript、ASP

制作特殊字的脚本

JS实现简洁、全兼容的拖动层实例

精品推荐
分类导航