js,jq,事件写法的区别与用处

先上代码

<!DOCTYPE html>
<html>
<head lang = "en">
<meta charset = "UTF-8">
<title></title>
<script src="js/jquery.js"></script>
</head>
<body>
<div id="aaa" style="width: 500px;height:200px;border: 1px dashed red"></div>
<script>
function test(event){console.log(event.clientX);};
function test1(){console.log(this);};
var aaa = document.getElementById("aaa");
$('#aaa').click(function(event){console.log(event.clientX);})
$('#aaa').click(function(event){console.log(event.clientX);})
aaa.onclick=function(event){console.log(event.clientX);};
aaa.onclick=function(event){console.log(event.clientX);};
aaa.addEventListener('click',test);
aaa.addEventListener('click',function(){console.log(this);});

</script>
</body>
</html>

 

 

 亲  你能答对 当点击一次DIV 控制台打印多少行东西吗?

 

上结果

testEvent.html:15 295
testEvent.html:16 295
testEvent.html:18 295
testEvent.html:12 295
testEvent.html:20 <div id=​"aaa" style=​"width:​ 500px;​height:​200px;​border:​ 1px dashed red">​</div>​

 

结论: ele.onclick=function(){}这种写法,无论 重复多少行,视为重复声明对象,事件只运行一次

addEventListener这种写法,如果传入的函数是匿名,那么绑定几次就运行几次事件,例如 连续绑定2次 匿名函数,那么点击一次 就会调用2次匿名函数

如果传入的是有名称的函数,函数名相同,则运行一次,不同,则 绑定几次 就运行几次

 

posted @ 2014-11-28 12:30  x_window  阅读(815)  评论(0编辑  收藏  举报