首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >getElementsByClassName问题

getElementsByClassName问题
EN

Stack Overflow用户
提问于 2012-09-11 20:52:13
回答 1查看 798关注 0票数 1

我目前对getElementsByClassName属性有问题。我有一个显示和隐藏函数,当您悬停在产品单击此处上时,它会显示一个按钮--我已经使用getElementById属性启用了这个函数,但是,由于我希望使用类复制这个函数,这是更好的做法。下面的代码是否是使用ClassName JS函数解决此问题的正确方法?

另外,我一直在阅读getElementsByClassName在IE8中不受支持,这是真的吗?有办法解决这个问题吗?

代码语言:javascript
复制
  <script>    
  function show(viewProductBtn){
document.getElementByClassName(viewProductBtn).style.visibility = "visible";
}

function hide(viewProductBtn) {
document.getElementByClassName(viewProductBtn).style.visibility = "hidden";
}
</script>

<!--HTML-->
<div class="product-shot-bg" onMouseOver="show('viewProductBtn')"      onMouseOut="hide('viewProductBtn')">
        <a href="#" class="viewProductBtn"></a>

目前,我已经将我的开发站点切换回getByID,以演示转换应该如何工作。

EN

回答 1

Stack Overflow用户

发布于 2012-09-11 20:55:39

getElementsByClassName

s元素”以复数形式出现。也就是说,函数返回一个数组(实际上是一个NodeList),所以您需要循环数组,或者如果只需要第一个元素,则需要获得第一个元素。

请参见document.querySelector("."+viewProductBtn)中的一个元素,document.querySelectorAll("."+viewProductBtn)用于多个元素,或者考虑使用ID和getElementById

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12377734

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档