我写了个,没有测试,不知道符合你的要求不 我是把所有的input都绑定这个事件了,你可以按你的需求改下。// bind event to an object var myaddEvent = function(o, e, l) { if (document.all) { //ie o.attachEvent('on' + e, l); } else { //ecma browser o.addEventListener(e, l, false); } }// your function var myFunc=function(){ }// get all your inputs var inputs = getElementsByTagName('input'); // each bind events for (var i = 0; i < inputs.length; i++) { myaddEvent(inputs[i], 'keydown', myFunc); }
document.getElementsByTagName('input')[0].onkeydown=function(event){ var e=event; var el=this; //其中e为你上面指定的参数event,el为你上面指定的this }
修改下,你还要传对象过去哈。// your function var myFunc=function(obj){ }// get all your inputs var inputs = getElementsByTagName('input'); // each bind events for (var i = 0; i < inputs.length; i++) { myaddEvent(inputs[i], 'keydown', myFunc(this)); }
alert(e); 在IE下不认识,FF下倒是可以 呵呵lyanlu的方案还没有试,请稍候
document.getElementsByTagName('input')[0].onkeydown=function(event){ var e=event||window.event; var el=this; //其中e为你上面指定的参数event,el为你上面指定的this }
我是把所有的input都绑定这个事件了,你可以按你的需求改下。// bind event to an object
var myaddEvent = function(o, e, l) {
if (document.all) {
//ie
o.attachEvent('on' + e, l);
}
else {
//ecma browser
o.addEventListener(e, l, false);
}
}// your function
var myFunc=function(){
}// get all your inputs
var inputs = getElementsByTagName('input');
// each bind events
for (var i = 0; i < inputs.length; i++) {
myaddEvent(inputs[i], 'keydown', myFunc);
}
var e=event;
var el=this;
//其中e为你上面指定的参数event,el为你上面指定的this
}
var myFunc=function(obj){
}// get all your inputs
var inputs = getElementsByTagName('input');
// each bind events
for (var i = 0; i < inputs.length; i++) {
myaddEvent(inputs[i], 'keydown', myFunc(this));
}
alert(e); 在IE下不认识,FF下倒是可以 呵呵lyanlu的方案还没有试,请稍候
var e=event||window.event;
var el=this;
//其中e为你上面指定的参数event,el为你上面指定的this
}
同时也多谢lyanlu的帮助。结贴!!!