self.attachevent is not a function的解决方法

前端之家收集整理的这篇文章主要介绍了self.attachevent is not a function的解决方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

注意原因:

window对象的attachEvent方法只在IE浏览器中有效,其它浏览器不支持这个方法,所以报错。

self.attachevent is not a function其实就是以前的代码, 没有做chrome、firefox浏览器兼容导致。

上面的代码在chrome浏览器肯定会报错的。

因为chrome浏览器绑定事件不支持attachevent而支持addEventListener。

下面是临时解决方法

但是效果会丢失,这个不报错但效果也没有了。

IE:element.attachEvent(”onclick”,func);。 FF:element.addEventListener(”click”,func,true)。 通用:element.onclick=func。虽然都可以使用onclick事件,但是onclick和上面两种方法效果是不一样 的,onclick只有执行一个过程,而attachEvent和addEventListener执行的是一个过程列表,也就是多个过程。例 如:element.attachEvent(”onclick”,func1);element.attachEvent(”onclick”,func2)这样func1和func2都会被执行。

建议大家参考这篇文章方法解决

猜你在找的JavaScript相关文章