`
ugibb510
  • 浏览: 130558 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

JS 动态添加事件

阅读更多

转: http://www.iteye.com/problems/22476

 

Javascript为元素动态的添加事件包括两种情况: 

 

  • 不带参数的事件: 

直接给对象添加事件,节点添加事件 :

var _obj = document.getElementById("Obj"); 

_obj.onfocus = functionName;


_obj.onblur = function aaaa(){ 
    alert('aaaaa'); 
} 

 
更加动态,更为实用,能添加多个函数(添加的事件的顺序即执行顺序)

var _obj = document.getElementById("obj"); 

if(window.addEventListener){ 
    // Mozilla, Netscape, Firefox 
    _obj .addEventListener('click', alert('cc'), false); 
    _obj .addEventListener('click', alert('cc'), false); 
} else { 
    // IE 
    _obj .attachEvent('onfocus ',  function(){alert('changchang');}); 
    _obj .attachEvent('onblur',  function(){alert('changchang');}); 
} 

 

  • 带参数的事件 

这里的functionName就是事件处理函数,如果是带参数的那该怎么办, 
有人说是这样: 
element.onclick=function(sb){ 
        alert(sb); 
    } 
答案是不正确的。 
解决方法:匿名函数:

OperatorTd.onblur = function() { 
        ToFont(index); 
}; 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics