js的事件绑定方法中,ie只支持attachEvent,而FF和Chrome只支持addEventListener;严格来说:addEventListener只有IE9以上版本的IE浏览器上能够兼容,IE8或者更低的版本是不支持,这时要想能够兼容IE低版本浏览器就需要判断当前浏览器然后针对不同浏览器决定用哪一个。

  attachEvent和addEventLitener的不同之处是第二个参数事件名要多加个“on”,比如‘onclick’,而且他的this 指向的是window,在使用的时候需要改变this指向。下面就是一个兼容的写法:

 var Event = {};
Event.addEvents = function(target,eventType,handle){
if(document.addEventListener){
Event.addEvents = function(target,eventType,handle){
target.addEventListener(eventTypt,handle,false);
};
}else {
Event.addEvents = function(target,eventType,handle){
target.attachEvent('on'+eventType,function(){
handle.call(target,arguments);
});
}; }
Event.addEvents(target,eventType,handle); }

调用方法:

 Event.addEvents(document,"click",function(){
alert(ok)
});

最新文章

  1. iOS学习笔记——多控制器管理
  2. 选项卡 tab切换
  3. ThinkPHP 3.2.3 自动加载公共函数文件的方法
  4. js设计模式(7)---装饰者模式
  5. Qt对话框QDialog
  6. 理解cookie的path和domain属性(转)
  7. excel中自动变为插入语句的写法
  8. Head First设计模式之模板方法模式
  9. hdu 5458 Stability(树链剖分+并查集)
  10. ROS机器人编程实践----琐碎知识点
  11. consul - 基础
  12. .net ORM框架(Dapper简单应用)
  13. Xshell配置密钥公钥(Public key)与私钥(Private Key)登录
  14. python的type class
  15. ora-12899解决方法
  16. 【转】Android 获取本机号码(收集)
  17. 【经验】STL的list vector在iterator迭代器的循环中 使用erase 造成的BUG
  18. rabbitMQ rabbitmq-server -detached rabbitmq-server -detached rabbitmq-server -detached
  19. html 获取鼠标左键事件,滚轮点击事件,右键点击事件
  20. java把流抛给浏览器下载时,当下载的文件文件名为中文时,出现中文名被替换为“----------”的情况

热门文章

  1. Java基础——java中String、StringBuffer、StringBuilder的区别
  2. JAVA 框架 / SSM / SSM SPRING+SPING MVC + MYBATIS 三大框架整合详细步骤
  3. QueryString
  4. C#监听窗体新建/鼠标移入移出
  5. 前端中的事件循环eventloop机制
  6. JSONCPP介绍
  7. Python中的变量,数据类型
  8. Beta冲刺测试
  9. 配置OpenCV报应用程序无法正常启动0xc000007b
  10. CF 979D Kuro and GCD and XOR and SUM(异或 Trie)