博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JS笔记(4) 选项卡案例
阅读量:6705 次
发布时间:2019-06-25

本文共 1924 字,大约阅读时间需要 6 分钟。

HTNL+CSS基础结构

复制代码
  • 三花
  • 英短
  • 奶牛
三花猫(Three Felinae),别名猫咪、家猫、野猫、土猫。是猫类的一种,世界各地均有分布。所谓的三花猫就是身上有 黑 、红(橘)和白三种颜色的猫,故名为三色猫。
英国短毛猫,体形圆胖,四肢粗短发达,毛短而密,头大脸圆,温柔平静,对人友善,极易饲养
所谓奶牛猫就是平时所说的黑白花。因为看起来像奶牛,所以就这么叫。 奶牛猫是普通的家猫(中华田园土猫种),都是属于杂交血统。
复制代码

一、方案一:定点清除

思路:

  • 1.获取原相关元素
  • 2.存储li元素第一项
  • 3.循环所有li元素,当点击li元素时,把当前点击元素的上一项元素的类名清除,再给当前点击元素添加相应类名
  • 4.给每一项li设置自定义属性:目的是让其对应的div元素能够通过myIndex属性值 进行相关操作
const lis = document.querySelectorAll('#box>ul>li');        const divs = document.querySelectorAll('#box>div');                let first = lis[0]; //        for (let i = 0; i < lis.length; i++) {            lis[i].myIndex = i            //给每一项li设置自定义属性:目的是让其对应的div元素能够通过myIndex属性值 进行相关操作            // console.log(lis[i].myIndex) // 0 1 2            lis[i].onclick = function () {                first.className = ''; //当点击lis元素的第一项时,把第一项的类名清空                this.className = 'active'; //把当前点击的那一项lis[i]加上类名                                divs[first.myIndex].className = '';                divs[i].className = 'active'                                first = this; // 让当前点击的那一项变成下次点击的上一个            };        };复制代码
  • 当点击第一项时: first = lis[0] i=0 first.myIndex=0,即把第一项li和div类名删除 再把第一项类名加上 此时:first = 当前点击项即第一项
  • 当点击第二项时: first = lis[0] i=1 first.myIndex=1,即把第一项li和div类名删除 再把第二项类名加上 此时:first = 当前点击项即第二项
  • 当点击第三项时: first = lis[0] i=2 first.myIndex=2,即把第二项li和div类名删除 再把第三项类名加上 此时:first = 当前点击项即第三项

二、方案二:大清洗

思路:

  • 1.获取原相关元素
  • 2.存储li元素第一项
  • 3.循环所有li元素,当点击li元素时,把所有li和div的类名都删除然后给当前点击的元素添加类名
  • 4.给每一项li设置自定义属性:目的是让其对应的div元素能够通过myIndex属性值 进行相关操作
var liList = document.querySelectorAll('#box>ul>li');        var divList = document.querySelectorAll('#box>div');        for (var i = 0; i < liList.length; i++) {            liList[i].myIndex = i            liList[i].onclick = function () {                for(var k = 0;k

转载地址:http://mddlo.baihongyu.com/

你可能感兴趣的文章
java jvm 不同的垃圾回收器的比较
查看>>
keepalived+lvs-dr+nginx双主模型
查看>>
oracle基础培训教程
查看>>
IS-IS帧中继配置
查看>>
rsync 强化技术(手动修改端口开启防火墙的情况下)并且通过脚本只同步需要的服务器...
查看>>
无应答事务的性能测试方法
查看>>
linux rinetd、socat端口转发部署
查看>>
小技巧:Windows 删除”找不到该项目”文件夹
查看>>
Exchange 2010 之DAG安装
查看>>
VMware vSphere 5.1 群集深入解析(十二)- DRS动态配额
查看>>
mysql SQL服务器模式
查看>>
dhcp备份、恢复
查看>>
DHTML快速入门
查看>>
TopCoder一简单题的解题过程
查看>>
RHCE 学习笔记(36) - MariaDB
查看>>
Gartner对SIEM的定义
查看>>
实战-JavaWweb的Servlet和Filter运行关系(一)
查看>>
《UNIX/Linux网络日志分析与流量监控》新书上市一个月,销量位列畅销榜 TOP 10...
查看>>
我的友情链接
查看>>
上课笔记分享-1-第17课时-1-多域名-统一沟通-环境
查看>>