onclick和addeventlistener的区别 dinput和xinput区别
各位老铁们好,相信很多人对onclick和addeventlistener的区别都不是特别的了解,因此呢,今天就来为大家分享下关于onclick和addeventlistener的区别以及dinput和xinput区别的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!
addEventListener和普通.onclick的区别
addEventListener是在 FireFox上的用法。
addEventListener的参数一共有三个,语法为:
element.addEventListener(type,listener,useCapture)
详解
其中element是要绑定函数的对象。
type是事件名称,要注意的是"onclick"要改为"click","onblur"要改为"blur",也就是说事件名不要带"on"。
listener当然就是绑定的函数了,记住不要跟括号
最后一个参数是个布尔值,表示该事件的响应顺序,下面重点介绍一下addEventListener的第3个参数(useCapture)。
userCapture若为true,则浏览器采用Capture,若为false则采用bubbing方式。建议用false
区别:
varbtn1Obj=document.getElementById("btn1");
//element.addEventListener(type,listener,useCapture);
btn1Obj.addEventListener("click",method1,false);
btn1Obj.addEventListener("click",method2,false);
btn1Obj.addEventListener("click",method3,false);执行顺序为method1->method2->method3
document.getElementById("btn").onclick=method1;
document.getElementById("btn").onclick=method2;
document.getElementById("btn").onclick=method3;如果这样写,那么将会只有medhot3被执行
JS 中的 eventevent:window.event什么意思求详解。
1、this表示这个<input>元素,等同于document.getElementById;
2、a)你的理解是正确的,但是不仅只有undifined会被强制转换。
js的弱类型,让他可以申明后赋任何类型的值。
因此除了bool型的false,number类型的0,String类型的空串,还有null在三元运算符或者判断条件时都会被转成false
其他还有一些,可以看一看比较基础的javascript书和《javascript高级程序设计》,可谓一阅扫百惑,比在网上别人一知半解的讲述了解的更彻底。
b)通过上面的解答,应该知道为什么不能用event代替this了吧
c)js对于函数的定义是非常松,即使你在函数定义时未写任何参数,或者你定义的参数有多个,但是你调用时,一个参数也不填,也不会出错的。
js函数内默认有个变量,保存你的入参叫:arguments
他是一个数组,下标从0开始,
所以获取event可以写成
function Test(){
var event= window.event||arguments[0];
}
在ie下,事件对象是在全局的,也就window下,做为window的一个属性
在其他浏览器,都做为方法的第一个参数传入,所以这样写是为了兼容
要获取这个button的值,可以先获取这个对象,event既然是事件,肯定是某对象触发的
所以有这要一个方法
ie下是event.srcElement
其他浏览器是event.target
所以获取这个对象和获取事件对象的值可以这样写
function Test(){
var event= window.event||arguments[0],
//target就是这个对象
target= event.srcElement||event.target,
//这个对象的值
targetValue= target.value;
}
关于onclick和addeventlistener的区别和dinput和xinput区别的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。