所以这是我的js代码http://jsfiddle.net/f653jnm0/

<body>
<button id="textChanger">change first div text</button>

<div id="firstdiv"> this is some text</div>

<script type="text/javascript">

document.getElementById("textChanger").onclick=function() {document.getElementById("firstdiv").innerHTML='blabla'};

</script>


当您单击按钮时,它将更改文本。我想知道为什么我们需要使用匿名函数来使其工作?没有它,我们不能运行代码吗?如下图所示。

http://jsfiddle.net/hjavw3h5/1/

<body>
<button id="textChanger">change first div text</button>

<div id="firstdiv"> this is some text</div>

<script type="text/javascript">

document.getElementById("textChanger").onclick=document.getElementById('firstdiv').innerHTML='bla bla bla';

</script>




在这种情况下,默认情况下将运行js代码,并且无需与按钮交互即可更改文本。
我刚刚开始学习js,因此您的帮助将不胜感激。谢谢 :)

最佳答案

我想知道为什么我们需要使用匿名函数来使其工作?


因为您必须为浏览器/引擎提供事件发生时可以执行的功能。函数允许您执行此操作。

注意:该函数不必是匿名的,也可以命名为:

function handler() {
    // handler code here
}

document.getElementById('target').onclick = handler;



  没有它,我们不能运行代码吗?


否(至少没有点击)。

关于javascript - 使此代码在不使用匿名函数的情况下运行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27885556/

10-16 19:38
查看更多