addEventListener&的问题在我的网站上目标clic

时间:2017-01-10 23:56:56

标签: javascript html click addeventlistener

我正在玩HTML,CSS& JavaScript,但我不是很好。我正在尝试以下方法:

<script type="text/javascript">
var tab = document.getElementsByClassName("MYCLASS");
for(var i = 0, j=tab.length; i<j; i++){
tab[i].addEventListener('click', afficher,false);
}
function afficher(){
alert(this.class);
}
</script>

在我的所有.MYCLASS div上附加点击监听器正在运行。但是,在Google Chrome浏览器的警告窗口中,它会向我undefined而不是.MYCLASS

所以我尝试了这段代码:

function afficher(e){
  var target = e.target || e.srcElement;
  var $target = $(e.currentTarget);
  alert(target.class);
}

但结果完全一样。感谢任何帮助,谢谢!

2 个答案:

答案 0 :(得分:0)

你可以使用一个简单的&#39; for&#39;循环,但您需要确保仅将事件附加到DOM元素。 getElementsByClassName()返回的HTML列表不仅仅返回DOM元素。

&#13;
&#13;
staging_data
&#13;
&#13;
&#13;

答案 1 :(得分:0)

这是因为没有为名为html的{​​{1}} DOM对象定义属性。

如果要获取类值,则应使用class

所以你的功能应该是这样的:

this.className