Javascript 对象中的鼠标事件处理
因为我对编程是全新的,更特别是在面向对象方面,并且尝试学习/实验一些东西。我正在研究如何使用对象处理外部JS文件中的鼠标事件Javascript 对象中的鼠标事件处理,javascript,Javascript,因为我对编程是全新的,更特别是在面向对象方面,并且尝试学习/实验一些东西。我正在研究如何使用对象处理外部JS文件中的鼠标事件 var ABK={//external js file event:{ onload:function (fn){ window.onload=fn; }, click:function (id,fn){ ob=document.getElementById(id);
var ABK={//external js file
event:{
onload:function (fn){
window.onload=fn;
},
click:function (id,fn){
ob=document.getElementById(id);
ob.addEventListener("onClick", fn, false);
}
}
在html中
<script language='javascript' src='abk.js'></script>
<script language='javascript'>
var init=function(){
alert("works");
}
ABK.event.onload(init);//this works
ABK.event.click("circle",init);//this wont work
</script>
var init=函数(){
警惕(“工作”);
}
ABK.event.onload(初始化)//这很有效
ABK.event.点击(“圆圈”,初始化)//这行不通
假设您有一个id为circle
的元素,那么您需要做的就是在abk.js
ob.addEventListener("click", fn, false);
使用
addEventListener
时,事件不包括“开”,如果从元素的属性进行赋值,则会使用“开”。事实上,在我添加click事件时,元素并不存在,是的事件名称为“click”。感谢并感谢您的回复和帮助
click:function (id,fn){
ob=document.getElementById(id);
ob.addEventListener("click", fn, false);
}
在html中
var init=function(){
//alert("works");
ABK.event.click("circle",someTask);
}
var someTask=function(){
//do somethin..
}
ABK.event.onload(init);//this works
“这行不通”。事件的名称是“单击”,而不是“onClick”。另外,在执行代码时,可能ID为“circle”的元素还不存在。因为还有HTML属性,它们与DOM元素的属性不同,所以区分它们很重要(IMO)。