用JS怎样实现类似淘宝tab切换栏的功能?
Admin 2021-10-19 群英技术资讯 424 次浏览
用JS怎样实现类似淘宝tab切换栏的功能?tab切换栏的功能还是比较实用的,例如淘宝页面的商品详情,规格参数和累计评价三个栏,点击不同的栏下面出现的内容不同,这样的设计的好处就是能让页面更整洁美观,接下来我们就看看这个效果要怎样做。
根据淘宝做出默认状态下为商品介绍栏以及对应的文字,鼠标点击其他栏目,点击的栏目背景颜色变红,同时下面的栏目出现点击栏目的解释。
程序源码:
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>tab栏切换操作</title> <style> * { margin: 0; padding: 0; box-sizing: border-box; } .tab { margin: 100px auto; width: 1200px; height: 330px; background-color: royalblue; } .tab .tab_list { height: 30px; background-color: slategrey; } .tab ul li{ float: left; list-style: none; cursor: pointer; width: 100px; height: 30px; } .color { background-color: red; } .tab .tab_con { height: 300px; background-color: silver; } </style> </head> <body> <div class = "tab"> <div class="tab_list"> <ul> <li class = "color">商品介绍</li> <li>规格与包装</li> <li>售后保障</li> <li>商品评价</li> <li>手机社区</li> </ul> </div> <div class="tab_con"> <div class="item" style="display:block;">商品介绍</div> <div class="item" style="display: none;">规格与包装</div> <div class="item" style="display: none;">售后保障</div> <div class="item" style="display: none;">商品评价</div> <div class="item" style="display: none;">手机社区</div> </div> </div> <script> var tab_list = document.querySelector('.tab_list'); var lis = tab_list.querySelectorAll('li'); var items = document.querySelectorAll('.item'); for(var i = 0;i<lis.length;i++){ //给所有的li添加自定义属性索引号 lis[i].setAttribute('index',i) //设置鼠标点击事件 lis[i].onclick = function(){ for( var i = 0;i<lis.length;i++){ //将所有类的类名设置为空 lis[i].className=''; //将所有的display设置为none items[i].style.display='none'; } //给点击事件的类名设置为color this.className='color'; //获取点击事件的索引号 var index = this.getAttribute('index'); // for (var i=0;i<items.length;i++){ // items[i].style.display='none'; // } //将点击事件的display设置为block items[index].style.display = 'block'; } } </script> </body> </html>
以上就是用JS实现类似淘宝tab切换栏的功能的具体代码,需要的朋友可以参考学习,希望对大家学习JS有帮助,想要了解更多tab切换栏效果的实现,大家可以继续浏览群英网络其他相关的文章。
文本转载自脚本之家
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
目录vue实现Toast轻提示首先创建一个toast组件在js文件中引入组件在入口文件中引入上面这个js文件下面就可以在view里全局使用了使用vant的Toast轻提示报错文档中是这样写的实际使用是这样写vue实现Toast轻提示首先创建一个toast组件template div class=context v-s
这篇文章主要给大家介绍了关于React获取input值并提交的2种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
JavaScript中怎样对input框设置只读?input框在网页的设计中经常会使用到,但是有时候我们需要设置input框只读, 这样可以防止用户对数据的更改,在某些情况下还是比较实用的。那么有什么方法能设置input框为只读?
这篇文章给大家分享的是有关vue递归组件怎么使用的内容。小编觉得挺实用的,因此分享给大家做个参考,文本有具体实例,有这方面学习需要的朋友就跟随小编一起来看看吧。
目录ElementUI上传Base64编码后的图片安装ElementUI按需引入(当然如果需要你也可以全部引入)上传实现ElementUI把上传的图片转为Base64ElementUI上传Base64编码后的图片自我认为ElementUI还是一个很不错的写手机端的组件,所以这次做小项目的时候就用了ElementUI的U
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008