javascript对鼠标左中右键的捕捉情况

先测试click事件,下面是测试代码:


var addEvent = document.addEventListener ? function(el,type,fn){

      el.addEventListener(type,fn,false);

}:function(el,type,fn){

     el.attachEvent("on"+type,function(){

      fn.call(el,window.event);

  });

}

window.onload = function(){

    addEvent(document,"click",function(e){

      alert(e.button)

   });

}

window.onload = function(){

    addEvent(document.body,"click",function(e){

      alert(e.button)

   });

}

文档对象 元素节点
IE8 × ×
Firefox 3.6 × ×
Chrome 8.0 × ×
Opera 11.0 × × × ×
以上测试结果
  1. 在元素节点部分,无论是document.body,div,input[type=button]并无区别
  2. IE8下无论是标准模式或怪异模式也没差异
  3. IE8无论你是用input还是button标签生成标签,结果都是一样
  4. 右键捕捉的失败,估计是被contextmenu事件劫持掉了

想全面地捕捉左中右键,估计只能使用正式的鼠标事件,如mousedown。

文档对象 元素节点
IE8
Firefox 3.6
Chrome 8.0
Opera 11.0

你可能感兴趣的:(JavaScript)