我对此感到非常愚蠢,但我在我的主要Dojo require脚本中有一个命名函数,我的目的是在点击事件调用时运行。但是,该函数在加载页面时运行,并且不会在click事件上运行。
<script>
require(["esri/map", "dojo/domReady!"], function(Map){
var map = new Map("map");
testNode = document.getElementById("testNode");
testNode.onclick = test();
function test() {
alert("test");
}
}
</script>
<body>
<div id="testNode">Click Here To Test</div>
<div id="map></div>
</body>
一旦页面加载&#34;测试&#34;警报弹出,点击事件没有任何反应。
答案 0 :(得分:4)
键入
时testNode.onclick = test();
您正在调用函数test
并将函数的返回值传递给testNode.onclick
。您应该将函数test
的引用分配给testNode.onclick
:
testNode.onclick = test;