您的位置:首页 > 其它

IE和Firefox兼容两个小问题

2015-12-23 08:52 218 查看
今天用别人的代码是,发现他写的js文件只针对IE有用,而Firefox浏览器根本无法使用,归纳下来,总要是两个问题:

1.innerHTML和innerText的区别

innerHTML是符合W3C标准的属性,而innerText只适用于IE浏览器,因此,尽可能地去使用innerHTML,而少用innerText,如果要输出不含HTML标签的内容,可以使用innerHTML取得包含HTML标签的内容后,再用正则表达式去除HTML标签,下面是一个简单的符合W3C标准的示例:

<a href="javascript:alert(document.getElementById('test').innerHTML.replace(/<.+?>/gim,''))">无HTML,符合W3C标准</a>

2.event如何获取的问题

Event 对象代表事件的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态。

事件通常与函数结合使用,函数不会在事件发生前被执行!

IE 中可以直接使用event 对象,而FF 中则不可以,解决方法之一如下:
var event=arguments.callee.caller.arguments[0] || window.event

第二种是将event 作为参数来传递:
function xxx(e){var theEvent = window.event || e;}

浏览器兼容问题是个好问题,/(ㄒoㄒ)/~~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: