欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

html标签中绑定触发事件与js中绑定触发事件写法上的区别

程序员文章站 2022-03-27 17:15:56
...
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>js中方法名后加括号和不加口号的区别</title>
</head>
<body>
<div id="target"> 
</div> 
<button id="btn" onclick="test()">按钮</button> 
</body>
</html>

<script type="text/javascript">
var test = function(){ 
var span = document.createElement("span"); 
span.innerHTML="添加"; 
document.getElementById("target").appendChild(span); 
}

//document.getElementById("btn").onclick=test; 
//document.getElementById("btn").onclick=test(); 
</script>

如上述的代码,

在button标签中绑定onclick事件,要写成test(),不能写成test,test是指向一个function,当点击按钮的时候,test()就告诉浏览器执行test函数,而test只是告诉了浏览器test函数,并没有要执行

在js中onclick绑定时,要写成test,这样就会把test函数绑定在按钮上,当点击的时候就执行,如果写成test()的话,在onclick绑定时就执行了test函数,所以onclick绑定的东西是test执行后的结果或者返回函数,如果想绑定的是某个函数的返回函数(return function{}),就可以用οnclick=test();


以上是通过网上找资料、自己实践后自我总结的一点看法,和大家分享下,如果有什么写的不对地方还请大家多多包涵、多提提意见



转载于:https://my.oschina.net/u/2476661/blog/523453