最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

js 實(shí)現(xiàn)一些跨瀏覽器的事件方法詳解及實(shí)例

 更新時(shí)間:2016年10月27日 17:11:46   投稿:lqh  
這篇文章主要介紹了js 實(shí)現(xiàn)一些跨瀏覽器的事件方法詳解及實(shí)例的相關(guān)資料,需要的朋友可以參考下

js實(shí)現(xiàn)一些跨瀏覽器的事件方法

  用JavaScript實(shí)現(xiàn)事件的綁定,移除,以及一些常用的事件屬性的獲取,時(shí)常要考慮到在不同瀏覽器下的兼容性,下面給出了一個(gè)跨瀏覽器的事件對(duì)象:

var EventUtil = {
  on: function(element, type, handler) {/* 添加事件 */
    if (element.addEventListener) {
      element.addEventListener(type, handler, false);
    } else if (element.attachEvent) {//IE 注意:此時(shí)事件處理程序會(huì)在全局作用域中運(yùn)行,因此用attachEvent綁定的事件,此時(shí)在事件處理函數(shù)里的this 等于window,使用時(shí)要注意
      element.attachEvent("on" + type, handler);
    } else {
      element["on" + type] = handler;
    }
  },

  off: function(element, type, handler) {/* 移除事件 */
    if (element.removeEventListener) {
      element.removeEventListener(type, handler, false);
    } else if (element.detachEvent) {
      element.detachEvent("on" + type, handler);
    } else {
      element["on" + type] = null;
    }
  },

  getEvent: function(event) {/* 返回對(duì)event對(duì)象的引用 */
    return event ? event : window.event;
  },

  getTarget: function(event) {/* 返回事件的目標(biāo) */
    return event.target || event.srcElement;
  },

  preventDefault: function(event) { /* 取消事件的默認(rèn)行為 */
    if (event.preventDefault) {
      event.preventDefault();
    } else {
      event.returnValue = false;
    }
  },

  stopPropagation: function(event) {/* 阻止事件冒泡 */
    if (event.stopPropagation) {
      event.stopPropagation();
    } else {
      event.cancelBubble = true;
    }
  },

  /* mouseover 和mouserout 這兩個(gè)事件都會(huì)涉及把鼠標(biāo)指針從一個(gè)元素的邊界之內(nèi)移動(dòng)到另一個(gè)元素的邊界之內(nèi)。*/
  getRelatedTarget: function(event) {
    if (event.relatedTarget) {
      return event.relatedTarget;
    } else if (event.toElement) {//IE8 mouserout事件
      return event.toElement;
    } else if (event.fromElement) {//IE8 mouseover事件
      return event.fromElement;
    } else {
      return null;//其他事件
    }
  }
};

調(diào)用如下:

EventUtil.on(document, "click", function(event){//為document元素綁定click事件
  event = EventUtil.getEvent(event);//獲取event事件對(duì)象
  alert("Screen coordinates: " + event.screenX + "," + event.screenY);
});
 

文章參考自《JavaScript高級(jí)程序設(shè)計(jì)第三版》

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

最新評(píng)論

犍为县| 安吉县| 乡宁县| 古浪县| 镇安县| 安阳县| 吉木萨尔县| 大方县| 武定县| 宜君县| 花莲市| 繁峙县| 江北区| 长垣县| 合江县| 色达县| 临城县| 临澧县| 汉川市| 玉山县| 蒙山县| 旺苍县| 高邑县| 偃师市| 石楼县| 商都县| 鄯善县| 个旧市| 左云县| 平邑县| 林芝县| 苏尼特右旗| 呼图壁县| 丹巴县| 宜兴市| 镇宁| 泽库县| 石城县| 寿宁县| 海城市| 逊克县|