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

自己的js工具 Event封裝

 更新時間:2009年08月21日 01:46:18   作者:  
說到瀏覽器中的event,相信不少人都很頭疼,ie的event大部分時候都可以獲取到
因為ie的event是全局的而firefox的event是局部的,用起來不太方便,這個時候我們就要自己組裝一下常用的event操作了,封裝成類便于重用
復制代碼 代碼如下:

/**
類 Event
用法:
Event.getEvent();獲取 ie,firefox的event
Event.getTarget();獲取ie的srcElement或firefox的target
Event.isIe();是否為ie
Event.clientX(); 獲取ie,fox的鼠標x坐標
Event.clientY();獲取 ie,fox的鼠標y坐標
*/
var Event=new function(){
this.toString=function(){
return this.getEvent();
}
//獲取 事件
this.getEvent=function(){
var ev=window.event;
if(!ev){
var c=this.getEvent.caller;
while(c){
ev=c.arguments[0];
if(ev && Event ==ev.constructor)
break;
c=c.caller;
}
}
return ev;
};
//獲取 事件源
this.getTarget=function(){
var ev=this.getEvent();
return this.isIe()?ev.srcElement:ev.target;
}
//是否為ie
this.isIe=function(){
return document.all?true:false;
}
//鼠標x坐標
this.clientX=function(){
var ev=this.getEvent();
var x=this.isIe()?ev.clientX:ev.pageX;
return x;
}
//鼠標y坐標
this.clientY=function(){
var ev=this.getEvent();
var y=this.isIe()?ev.clientY:ev.pageY;
return y;
}
/**增加事件(對象,事件類型,函數(shù)指針 )
obj: html對象
sEvent: 事件名稱
spNotify: 事件執(zhí)行的方法
isCapture:是否允許全屏捕捉
*/
this.addEvent=function(obj,sEvent,fpNotify,isCapture){
sEvent=sEvent.indexOf("on")!=-1?sEvent:"on"+sEvent;
if(obj.addEventListener){
sEvent=sEvent.substring(sEvent.indexOf("on")+2);
obj.addEventListener(sEvent,fpNotify,isCapture);
}else{ //ie
if(isCapture)
obj.setCapture(isCapture);
obj.attachEvent(sEvent,fpNotify);
}
}
//移除事件
this.removeEvent=function(obj,sEvent,fpNotify){
if(obj.removeEventListener){
sEvent=sEvent.substring(sEvent.indexOf("on")+2)
obj.removeEventListener(sEvent,fpNotify,false);
}else{
obj.detachEvent(sEvent,fpNotify);
}
}
//獲取鼠標按鍵,left=1,middle=2,right=3
this.button=function(){
var ev=this.getEvent();
if(!ev.which&&ev.button){//ie
return ev.button&1?1:(ev.button&2?3:(ev.button&4?2:0))
}
return ev.which;
};
//阻止事件冒泡傳遞
this.stopPropagation=function(){
var ev=this.getEvent();
if(this.isIe)
ev.cancelBubble=true;
else
ev.stopPropagation();
}
//阻止默認事件返回
this.preventDefault=function(){
var ev=this.getEvent();
if(this.isIe)
ev.returnValue=false;
else
ev.preventDefault();
}
}

相關文章

  • 網頁中的圖片查看器viewjs使用方法

    網頁中的圖片查看器viewjs使用方法

    下面小編就為大家?guī)硪黄W頁中的圖片查看器viewjs使用方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • vant倒序年月日期組件封裝實例詳解

    vant倒序年月日期組件封裝實例詳解

    這篇文章主要介紹了vant倒序年月日期組件封裝實例詳解,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2024-03-03
  • OpenLayers3實現(xiàn)鼠標移動顯示坐標

    OpenLayers3實現(xiàn)鼠標移動顯示坐標

    這篇文章主要為大家詳細介紹了OpenLayers3實現(xiàn)鼠標移動顯示坐標,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-09-09
  • JavaScript中的創(chuàng)建枚舉四種方式

    JavaScript中的創(chuàng)建枚舉四種方式

    枚舉是一種數(shù)據(jù)結構,它定義了一個有限的具名常量集,每個常量都可以通過其名稱來訪問,這篇文章主要介紹了JavaScript中的四種枚舉方式,需要的朋友可以參考下
    2023-05-05
  • 淺談webpack打包生成的bundle.js文件過大的問題

    淺談webpack打包生成的bundle.js文件過大的問題

    下面小編就為大家分享一篇淺談webpack打包生成的bundle.js文件過大的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • 微信小程序登錄獲取不到頭像和昵稱的詳細解決辦法

    微信小程序登錄獲取不到頭像和昵稱的詳細解決辦法

    相信好多小伙伴在使用getUserInfo獲取小程序用戶昵稱和頭像時卻獲取不到,下面這篇文章主要給大家介紹了關于微信小程序登錄獲取不到頭像和昵稱的詳細解決辦法,需要的朋友可以參考下
    2022-12-12
  • javascript:void(0)是什么意思示例介紹

    javascript:void(0)是什么意思示例介紹

    Javascript中void是一個操作符,該操作符指定要計算一個表達式但是不返回值,有不了解的朋友可以參考下本文
    2013-11-11
  • JS實現(xiàn)模仿微博發(fā)布效果實例代碼

    JS實現(xiàn)模仿微博發(fā)布效果實例代碼

    這篇文章主要介紹了JS實現(xiàn)模仿微博發(fā)布效果實例代碼,有需要的朋友可以參考一下
    2013-12-12
  • JavaScript對象引用與賦值實例詳解

    JavaScript對象引用與賦值實例詳解

    這篇文章主要介紹了JavaScript對象引用與賦值,結合實例形式分析了JavaScript對象引用及賦值的操作技巧與相關注意事項,需要的朋友可以參考下
    2017-03-03
  • JavaScript寫個貪吃蛇小游戲(超詳細)

    JavaScript寫個貪吃蛇小游戲(超詳細)

    這篇文章主要介紹了JavaScript寫個貪吃蛇小游戲(超詳細),本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03

最新評論

永吉县| 遂宁市| 建德市| 江西省| 贵定县| 明星| 都江堰市| 江都市| 广宁县| 南昌市| 莒南县| 河曲县| 新巴尔虎右旗| 阳江市| 永平县| 昌宁县| 扎兰屯市| 安达市| 迁安市| 新疆| 新营市| 西林县| 墨江| 徐汇区| 东海县| 遂川县| 大足县| 呼伦贝尔市| 平昌县| 阳城县| 靖州| 鄂州市| 新余市| 贡嘎县| 宜良县| 安平县| 浑源县| 乌什县| 垫江县| 岱山县| 涿鹿县|