转: 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.οnclick=function(sb){
alert(sb);
}
答案是不正确的。
解决方法:匿名函数:
OperatorTd.onblur = function() { ToFont(index); };