javascript 이벤트 바 인 딩 (제거) / javascript 사건 은 어떻게 전달 합 니까?

4601 단어 JavaScript
 1 function addEvent (obj, type, fn, opts) {

 2         //obj        

 3         //type          :'click'、‘mouseover’ 

 4         //fn       ,function

 5         //opts      

 6         obj['evt' + type + fn] = obj['evt' + type + fn] || null;

 7         if (!obj['evt' + type + fn]) {

 8             obj['evt' + type + fn] = function (event) {

 9                 var event = event || window.event;

10                 event.datas = opts || {};

11                 fn.call(obj, event);

12             };

13         }

14 

15         if (obj.addEventListener) {//W3C

16             obj.addEventListener(type, obj['evt' + type + fn], false);

17         } else if (obj.attachEvent) {

18             obj.attachEvent('on' + type, obj['evt' + type + fn]);

19         }

20     }

21 

22     function removeEvent(obj, type, fn) {//                    

23         if (typeof obj.removeEventListener != 'undefined') {

24             obj.removeEventListener(type, obj['evt' + type + fn], false);

25         } else if (typeof obj.detachEvent != 'undefined') {

26             if(fn && obj['evt' + type + fn]) {

27                 obj.detachEvent("on" + type,obj['evt' + type + fn]);

28             }else{

29                 obj['on'+type] = null

30             }

31         }

32     }

좋은 웹페이지 즐겨찾기