5条回答 默认 最新
- CSDN专家-showbo 2021-08-30 15:22关注
没问题你的代码,你不是将代码放到dom对象上面了,这样dom未生成为null调用相关方法会报错导致代码无效。有帮助麻烦点个采纳【本回答右上角】,谢谢~~有其他问题可以继续交流~
<style> #btn .active{color:#f00;display:inline-block;margin-right:10px} #city span{display:none} </style> <span class="logo_1_box2" id="btn"> <a class="active">ABCD</a> <a href="##">FGHJ</a> <a href="##">KLMNP</a> <a href="##">QRSTW</a> <a href="##">WYZ</a> </span> <span class="city" id="city"> <span class="logo_1_box2_1-1" style="display:block">1</span> <span class="logo_1_box2_1-1">2</span> <span class="logo_1_box2_1-1">3</span> <span class="logo_1_box2_1-1">4</span> <span class="logo_1_box2_1-1">5</span> </span> <script> var oBtn = document.getElementById('btn'); var oAs = oBtn.getElementsByTagName('a'); var oCity = document.getElementById('city'); var oLogo1box211 = oCity.getElementsByClassName('logo_1_box2_1-1');//[0]//不要取下标,去下标变dom对象非dom数组了,下面代码会出错 for (var i = 0; i < oAs.length; i++) { oAs[i].index = i; oAs[i].onclick = function () { for (var i = 0; i < oAs.length; i++) { oAs[i].className = ''; oLogo1box211[i].style.display='none' } this.className = 'active'; oLogo1box211[this.index].style.display = 'block' } } </script>
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
- ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
- ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
- ¥15 帮我写一个c++工程
- ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
- ¥15 关于smbclient 库的使用
- ¥15 微信小程序协议怎么写
- ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
- ¥20 怎么用dlib库的算法识别小麦病虫害
- ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启