使用 HTML DOM 来分配事件

<button id="myBtn" >点这里</button>
<script>
document.getElementById("myBtn").onclick=function(){displayDate()};
function displayDate(){
	document.getElementById("demo").innerHTML=Date();
}
</script>

通过DOM来设定button的触发在,在JS中 onclick=function(){displayDate()},为什么不可以是onclick=displayDate()。

镜花以西映陵东4076133
浏览 1776回答 3
3回答

Tobey_滔

可以!!只是你的方式错误了!!<button id="myBtn" >点这里</button> <script>     document.getElementById("myBtn").onclick=displayDate;     function displayDate(){         alert("你好!");     } </script>

stone310

直接写displayDate()是自执行,正确写法如一楼,加了括号自执行,不加括号调用函数

镜花以西映陵东4076133

()是个操作,表示执行displayDate方法,你把displayDate方法执行完的返回值赋给onclick能对吗?onclick接受的是Function类型的变量,要么用匿名的方法赋值就是document.getElementById("myBtn").onclick=function(){displayDate()};/*类型的变量?? 匿名的方法??*/要么用直接把函数名赋给onclick,document.getElementById("myBtn").onclick=displayDate;两种都可以,第二种更好。
打开App,查看更多内容
随时随地看视频慕课网APP