选项卡,js关闭选项卡

  选项卡,js关闭选项卡

  

JS多种方法实现动态选择选项卡

  首先贴出HTML 和 CSS 这个不是重点

  !声明文档类型

  超文本标记语言

  头

  meta charset=UTF-8

  meta name= viewport content= width=device-width,initial-scale=1.0

  meta http-equiv= X-UA-Compatible content= ie=edge

  标题文档/标题

  link rel=样式表 href= CSS/reset。量滴 CSS

  风格。tabBox{

  边距:20px自动;

  宽度:500像素

  }。tabBox ul{

  位置:相对;

  top:1px;

  }。tabBox ul li{

  显示:内嵌-块;

  填充:0 5px

  右边距:10px

  行高:33px

  边框:1px纯色# aaa

  光标:指针;

  }。tabBox ul li.active{

  边框-底部-颜色:# fff

  /* 当前里的边框覆盖着差异的边框,

  我们让里的下边框是背景颜色白色,这样看上去就像没边框了*/

  字体粗细:粗体;

  颜色:浅珊瑚色;

  }。tabBox分区{

  显示:无;

  行高:148像素

  文本对齐:居中;

  边框:1px纯色# aaa

  }。tabBox分区活动{

  显示:块;

  }

  /风格

  /头

  身体

  div id=tabBox

  保险商实验所

  里新闻/李

  里电影/李

  里音乐/李

  /ul

  差异嘟嘟/div

  差异滴滴/div

  差异嘟嘟滴滴/div

  /div

  脚本src=js/tab_zy.js/script

  /body

  /html【实现思路】

  给所有的里绑定点击事件,当点击任何一个里的时候,都做第二步操作

  可以先让所有的李p的班级都为空(xxx.className= ),在让当前点击的这个里和对应的p有活跃的这个样式类即可

  以下是JS获取元素的 公用部分

  var oBox=文档。getelementbyid( tab框),

  oList=obox。getelementsbytagname( Li ),

  op=obox。getelementsbytagname( p );方案一

  var LastIndex=0 //记录上次所选的里选中的索引

  for(var I=0;ioList.lengthi)

  奥利斯特[我].CurIndex=i

  奥利斯特[我].onclick=function(){

  如果(这个CurIndex===LastIndex)返回;//=如果当前点击的索引和上一次索引相同(点击的就是上一个被选中的),我们不做任何事情

  最后索引className=op[LastIndex]。className=//=清空上一次

  奥利斯特[这个CurIndex].className=op[this .CurIndex].活动的

  //=修改最后索引值,让当前本选中的索引作为下一次点击要清除的上一次的索引

  LastIndex=this .CurIndex

  }

  }方案二:

  //=1.传递对象

  for(var I=0;ioList.lengthi)

  奥利斯特[我].onclick=function(){

  变更标签(这个);

  }

  }

  功能更改标签(n){

  for(var j=0;joList.lengthj ){

  //=如果当前循环的里和传递进来点击的那个元素相同,说明当前循环的这个里就是被点击的,让其有选中样式

  if(oList[j]===n){

  奥利斯特[j]的缩写.className=op[j].活动的

  }否则{

  //=不相等,则不是被点击的,我们取消选中样式即可

  奥利斯特[j]的缩写.className=op[j].className=

  }

  }

  }方案三:

  对于(设I=0;我列表长度;i ) {

  小报记者onclick=function(){

  //事件绑定:给当前元素的某一个事情绑定一个方法,绑定的时候方法没有执行

  //(属于创建一个方法,当在页面中手动触发点击事件的时候绑定的方法才会执行)

  变更标签(一);

  }

  }

  //形参变量:当执行这个方法的时候,会把当前点击的这个里索引传递过来

  功能更改标签(n) {

  //1、所有都没有选中样式

  对于(设I=0;我列表长度;i ) {

  小报记者. class name=

  列表[i].类名=" ";

  }

  //2、当前点击的所有选中样式

  小报记者活动的

  名单,名单活动的

  }方案四:(JQ实现)

  //当超文本标记语言结构都加载完成执行函数

  jQuery(函数($){

  //基于JQ内置每个机制,给每个里都绑定了点击事件

  $(.tabBox.headerli )。on(click ,function(){

  让index=$(这个)。index();//获取当前点击的李的索引

  //siblings()来获取同级元素

  $(这个)。addClass(active )。兄弟姐妹()。removeClass(active )。父级()。nextAll(p )。eq(指数)。addClass(active )。兄弟姐妹( p )。removeClass(active )

  });

  });相关:【JavaScript视频教程】以上是js实现动态标签页的四种方法总结!更多详情请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: