JavaScript实现点击切换功能


Posted in Javascript onJanuary 27, 2021

本文实例为大家分享了JavaScript实现点击切换功能的具体代码,供大家参考,具体内容如下

在实际应用中,点击或者移入某一元素上,弹出下拉菜单或者页面,是网页设计的常见操作。

下面我们实现一种点击菜单实现菜单切换,使用js提供三种方式实现该功能。

JavaScript实现点击切换功能

1.使用html设计基本结构

<body>
<h2>多Tab点击切换</h2>
<ul id="tab">
 <li id="tab1" value="1">10元套餐</li>
 <li id="tab2" value="2">30元套餐</li>
 <li id="tab3" value="3">50元包月</li>
</ul>
<div id="container">
 <div id="content1">
 10元套餐详情:<br/> 每月套餐内拨打100分钟,超出部分2毛/分钟
 </div>
 <div id="content2" style="display: none">
 30元套餐详情:<br/> 每月套餐内拨打300分钟,超出部分1.5毛/分钟
 </div>
 <div id="content3" style="display: none">
 50元包月详情:<br/> 每月无限量随心打
 </div>
</div>
</body>

2.使用css设计基本样式

<style>
 * {
  margin: 0;
  padding: 0;
 }
 #tab li {
  float: left;
  list-style: none;
  width: 80px;
  height: 40px;
  line-height: 40px;
  cursor: pointer;
  text-align: center;
 }
 #container {
  position: relative;
 }
 #content1, #content2, #content3 {
  width: 300px;
  height: 100px;
  padding: 30px;
  position: absolute;
  top: 40px;
  left: 0;
 }
 #tab1, #content1 {
  background-color: #ffcc00;
 }
 #tab2, #content2 {
  background-color: #ff00cc;
 }
 #tab3, #content3 {
  background-color: #00ccff;
 }
</style>

3.js实现点击切换功能

//原生js
 var container=document.querySelectorAll('#container>div')
 var event_li=document.querySelectorAll('#tab>li')
 var currentindex=0
 for(var i=0;i<event_li.length;i++){
 event_li[i].num=i
 event_li[i].onclick=function(){
  container[currentindex].style.display='none'
  var index_other=this.num
  container[index_other].style.display='block'
  currentindex=index_other
 }}
//jQuery实现,点击一下父元素,子元素全部display_none,再将点击事件的元素的子元素设置为display_block
var $container=$('#container>div')
$('#tab>li').click(function(){
 $container.css('display', 'none')
 var index=$(this).index()
 var index_other=$(this).val()-1
 $container[index_other].style.display = 'block'
})
//jQuery实现,点击一下父元素,最开始的元素的子元素display_none,再将点击事件的元素的子元素设置为display_block
currentindex=0
$('#tab>li').click(function(){
 $($container[currentindex]).css('display', 'none')
 var index=$(this).index()
 $container[index].style.display = 'block'
 currentindex=index
})

4.总结

(1)、原生js就可以实现点击切换的功能,但是使用jQuery后更为容易,语法简单,却功能强大。

(2)、在比较2和3方法,可以看到第2法在触发点击事件后是将所有子元素设置的显示方式为none,显然在子元素较多时,此时要修改的次数也相应的增加,势必影响加载的性能,应该优化为3方法。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Extjs优化(二)Form表单提交通用实现
Apr 15 Javascript
BootStrap 附加导航组件
Jul 22 Javascript
JS动态加载脚本并执行回调操作
Aug 24 Javascript
JavaScript中const、var和let区别浅析
Oct 11 Javascript
Vue.js组件tree实现无限级树形菜单
Dec 02 Javascript
bootstrap Validator 模态框、jsp、表单验证 Ajax提交功能
Feb 17 Javascript
vue.js学习之vue-cli定制脚手架详解
Jul 02 Javascript
一篇文章让你彻底弄懂JS的事件冒泡和事件捕获
Aug 14 Javascript
jQuery实现鼠标移到某个对象时弹出显示层功能
Aug 23 jQuery
在VUE style中使用data中的变量的方法
Jun 19 Javascript
vue style width a href动态拼接问题的解决
Aug 07 Javascript
Vue项目打包部署到apache服务器的方法步骤
Feb 01 Vue.js
Node使用koa2实现一个简单JWT鉴权的方法
Jan 26 #Javascript
vue3 watch和watchEffect的使用以及有哪些区别
Jan 26 #Vue.js
vue实现轮播图帧率播放
Jan 26 #Vue.js
vue 组件基础知识总结
Jan 26 #Vue.js
深入了解Vue动态组件和异步组件
Jan 26 #Vue.js
如何在 Vue 表单中处理图片
Jan 26 #Vue.js
Vue实现摇一摇功能(兼容ios13.3以上)
Jan 26 #Vue.js
You might like
CURL的学习和应用(附多线程实现)
2013/06/03 PHP
PHP使用glob函数遍历目录或文件夹的方法
2014/12/16 PHP
PHP实现APP微信支付的实例讲解
2018/02/10 PHP
Cookie跨域问题解决方案代码示例
2020/11/24 PHP
检测是否已安装 .NET Framework 3.5的js脚本
2009/02/14 Javascript
Javascript表格翻页效果的具体实现
2013/10/05 Javascript
node.js中的buffer.length方法使用说明
2014/12/14 Javascript
学做Bootstrap的第一个页面
2016/05/15 HTML / CSS
JS常用函数和常用技巧小结
2016/10/15 Javascript
解决bootstrap中下拉菜单点击后不关闭的问题
2018/08/10 Javascript
vue-router懒加载速度缓慢问题及解决方法
2018/11/25 Javascript
JavaScript中this的全面解析及常见实例
2019/05/14 Javascript
编写Python脚本批量下载DesktopNexus壁纸的教程
2015/05/06 Python
python获得一个月有多少天的方法
2015/06/04 Python
Python3安装Pymongo详细步骤
2017/05/26 Python
python读取与写入csv格式文件的示例代码
2017/12/16 Python
使用pandas的DataFrame的plot方法绘制图像的实例
2018/05/24 Python
Python常见排序操作示例【字典、列表、指定元素等】
2018/08/15 Python
python 多进程队列数据处理详解
2019/12/23 Python
Python面向对象封装操作案例详解 II
2020/01/02 Python
Python模块zipfile原理及使用方法详解
2020/08/04 Python
Vans奥地利官方网站:美国原创极限运动潮牌
2018/09/30 全球购物
巴基斯坦购物网站:Goto
2019/03/11 全球购物
Ariat官网:美国马靴和服装品牌
2019/12/16 全球购物
英国领先的独立酒精饮料零售商:DrinkSupermarket
2021/01/13 全球购物
高一地理教学反思
2014/01/18 职场文书
总经理文秘岗位职责
2014/02/03 职场文书
机房搬迁方案
2014/05/01 职场文书
初三毕业评语
2014/12/26 职场文书
思想政治表现评语
2015/01/04 职场文书
MBA推荐信怎么写
2015/03/25 职场文书
上课讲话检讨书范文
2015/05/07 职场文书
大学生就业意向书
2015/05/11 职场文书
酒吧七夕情人节宣传语
2015/11/24 职场文书
HTML+CSS 实现顶部导航栏菜单制作
2021/06/03 HTML / CSS
解析在浏览器地址栏输入一个URL后发生了什么
2021/06/21 Servers