网站首页 > 技术文章 正文
项目目标
打开项目,观察导航条都是统一样式:
点击某一个导航条后,样式发生变化:
预留样式
1.给类名为nav_li的元素添加字体大小为20px,颜色为黑色,字体加粗,字体为自己喜欢的字体。
2.给类名为add的元素设置背景色红色,边框圆角13px,字体白色,转为行内块,宽为92px。
.nav_li {
font-family: "微软雅黑";
font-weight: bold;
font-size: 20px;
color: black;
}
.add {
background-color: red;
border-radius: 13px;
color: white;
display: inline-block;
width: 92px;
}
nav_li是统一样式,add是点击导航条之后增加的样式。
在html中添加add类:
<h1>My machine armor</h1>
<div>
<span class="nav_li">机甲库</span>
<span class="nav_li">炫酷皮肤</span>
<span class="nav_li">装备零件</span>
<span class="nav_li">战力测评</span>
</div>
script逻辑处理
首先,获取nav_li类对象,返回值是数组类型:
let nav = document.getElementsByClassName("nav_li");
console.log(nav);
导航条原始类名为nav_li,被点击后,在后面添加add类名,中间有一个空格。同时注意,要将之前的类名都重新置为nav_li。
for(let i = 0; i < nav.length; i++){
console.log(nav[i]);
nav[i].onclick = function(){
for(let i = 0; i < nav.length; i++)
nav[i].className = "nav_li";
this.className += " add";
}
}
slice字符串切片
- slice(x, len):表示从字符串下标为x处开始切片,切片长度为len
- sclice(x):表示从字符串下标为x处开始切片,直至字符串结束
给类名"nav_li add"切片,将类名分离出来:
alert(this.className.slice(0, 6));
alert(this.className.slice(7));
相关推荐
猜你喜欢
- 2024-10-04 Vue选项:computed计算属性(vue3.0 计算属性)
- 2024-10-04 Vue 中的计算属性(vue中的计算属性)
- 2024-10-04 Js基础7:表单元素属性(js中表单)
- 2024-10-04 Jquery属性——学习笔记(一)(如何使用jquery设置一个属性值)
- 2024-10-04 前端入门——在网页中使用JavaScript
- 2024-10-04 前端-JavaScript中的class(javascript class)
- 2024-10-04 如何获取JavaScript中某个函数可接受的参数数量
- 2024-10-04 关于js设置对象attr属性的问题(js对象属性值)
- 2024-10-04 react三大核心属性(react的核心)
- 2024-10-04 JS 对象基本用法(js对象的操作方法)
- 10-02基于深度学习的铸件缺陷检测_如何控制和检测铸件缺陷?有缺陷铸件如何处置?
- 10-02Linux Mint 22.1 Cinnamon Edition 搭建深度学习环境
- 10-02AWD-LSTM语言模型是如何实现的_lstm语言模型
- 10-02NVIDIA Jetson Nano 2GB 系列文章(53):TAO模型训练工具简介
- 10-02使用ONNX和Torchscript加快推理速度的测试
- 10-02tensorflow GPU环境安装踩坑日记_tensorflow配置gpu环境
- 10-02Keye-VL-1.5-8B 快手 Keye-VL— 腾讯云两卡 32GB GPU保姆级部署指南
- 10-02Gateway_gateways
- 最近发表
-
- 基于深度学习的铸件缺陷检测_如何控制和检测铸件缺陷?有缺陷铸件如何处置?
- Linux Mint 22.1 Cinnamon Edition 搭建深度学习环境
- AWD-LSTM语言模型是如何实现的_lstm语言模型
- NVIDIA Jetson Nano 2GB 系列文章(53):TAO模型训练工具简介
- 使用ONNX和Torchscript加快推理速度的测试
- tensorflow GPU环境安装踩坑日记_tensorflow配置gpu环境
- Keye-VL-1.5-8B 快手 Keye-VL— 腾讯云两卡 32GB GPU保姆级部署指南
- Gateway_gateways
- Coze开源本地部署教程_开源canopen
- 扣子开源本地部署教程 丨Coze智能体小白喂饭级指南
- 标签列表
-
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (95)
- pythoncase语句 (88)
- es6includes (74)
- sqlset (76)
- apt-getinstall-y (100)
- node_modules怎么生成 (87)
- chromepost (71)
- flexdirection (73)
- c++int转char (80)
- mysqlany_value (79)
- static函数和普通函数 (84)
- el-date-picker开始日期早于结束日期 (76)
- js判断是否是json字符串 (75)
- c语言min函数头文件 (77)
- asynccallback (87)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- 无效的列索引 (74)