javascript – 如何为html类添加事件监听器?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 如何为html类添加事件监听器?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1488字,纯文字阅读大概需要3分钟。
内容图文
![javascript – 如何为html类添加事件监听器?](/upload/InfoBanner/zyjiaocheng/698/edd09955ef40450f87ef4f9a9c6ce4ad.jpg)
如果我有这样的HTML:
<a href="#" class="movieImg"><div class="previewBulk"></div></a>
<a href="#" class="movieImg"><div class="previewBulk"></div></a>
和Javascript这样:
var movie = document.getElementsByClassName("movieImg");
var preview = document.getElementsByClassName("preview");
有没有办法addEventListener到2电影标签和预览div标签?
我尝试循环,但当我做的事情:
for(var i = 0, j=movie.length; i<j; i++){
movie[i].style.left = 100;
preview[i].style.left = 100;
}
我得到Uncaught TypeError:无法读取undefined的属性’style’.
更改预览到previewBulk后,我仍然得到错误,我的代码实际上看起来像这样
(function(){
var movie = document.getElementsByClassName("movieImg"),
preview = document.getElementsByClassName("previewBulk");
//result = [];
for(var i = 0, j=movie.length; i<j; i++){
movie[i].addEventListener("mouseover", function(){
preview[i].style.left = ((movie[i].offsetWidth-preview[i].offsetWidth)/2)+20;
preview[i].style.top = -(movie[i].offsetHeight+preview[i].offsetHeight);
preview[i].style.visibility = "visible";
});
movie[i].addEventListener("mouseout", function(){
preview[i].style.visibility = "hidden";
});
}
}());
解决方法:
document.getElementsByClassName不返回数组.它返回一个遍历XML文件的节点列表.
<a href="#" class="movie"><div class="previewBulk"></div></a>
<a href="#" class="movie"><div class="previewBulk"></div></a>
<script>
var movie = document.getElementsByClassName("movie");
for(var i = 0; i<movie.length; i++){
movie.item(i).style.width = "100px";
}?
</script>
见jsfiddle:http://jsfiddle.net/Uy5fk/
内容总结
以上是互联网集市为您收集整理的javascript – 如何为html类添加事件监听器?全部内容,希望文章能够帮你解决javascript – 如何为html类添加事件监听器?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。