javascript代码中的onclick事件处理程序,而不是html标记

时间:2015-12-09 15:43:40

标签: javascript event-handling

当试图确保我的网页使用不引人注目的javascript时,我似乎无法让onclick事件在我的javascript中工作,它只能作为html标记中的事件。这是代码

var dow = document.getElementById("dowDiv");
dow.onclick=function () {}

这对我不起作用的原因是什么?正如我所能找到的所有答案所说,这是做到这一点的方法,提前谢谢

3 个答案:

答案 0 :(得分:2)

根据所提供的信息,可能有几个原因。

最有可能的是,在DOM完成加载之前附加了事件功能代码。

或者,您可能正在使用不支持onclick的浏览器(尽管这不太可能!)。为了保证它可以工作,您可以使用回退来附加事件的主要路径:

{{1}}

答案 1 :(得分:1)

确保您只有一个ID为dowDiv的元素。如果你在元素上有z-index,而且某些内容超过了div,则可能会阻止div上的click事件。



var dow = document.getElementById("dowDiv");
var out = document.getElementById("out");
var clickCount = 0;
dow.onclick = function() {
  clickCount += 1;
  out.innerHTML = clickCount
}

<div id="dowDiv">Hello onclick <span id="out"></span>!</div>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

您可以使用jQuery来实现简单的功能。

在引用.js文件之前让你包含jQuery:

<script src="path/to/jQuery.js"></script>
<script src="file.js></script>

使用jQuery,你可以说

$('#dowDIV').click(function(){
   Do stuff here;
})