html5——DOM扩展

元素获取

1、document.getElementsByClassName ('class') 通过类名获取元素,以类数组形式存在。

2、document.querySelector(‘div’) 通过CSS选择器获取元素,符合匹配条件的第1个元素。

3、document.querySelectorAll('selector') 通过CSS选择器获取元素,以类数组形式存在。

类名操作

1、Node.classList.add('class') 添加class

2、Node.classList.remove('class') 移除class

3、Node.classList.toggle('class') 切换class,有则移除,无则添加

4、Node.classList.contains('class') 检测是否存在class

自定义属性

1、自定义属性格式:data-*="",例如data-info="informant"。

2、自定义属性获取:上例,通过Node.dataset['info'] 我们便可以获取到自定义的属性值informant

3、Node.dataset是以类对象形式存在的当我们如下格式设置时,则需要以驼峰格式才能正确获取:data-my-name="itcast",获取Node.dataset['myName']

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>* {padding: 0;margin: 0;}div {width: 400px;height: 600px;margin: 100px auto;}nav li {width: 100px;height: 30px;list-style: none;float: left;background-color: #cccccc;text-align: center;font: 400 14px/30px "simsun";cursor: pointer;}.current {background-color: yellow;}section {width: 400px;height: 500px;font: 700 40px/500px "simsun";text-align: center;background-color: blue;display: none;}.show {display: block;}</style>
</head>
<body>
<div><nav><ul><li data-cont="shine" class="current">阳光</li><li data-cont="beach">沙滩</li><li data-cont="cacti">仙人掌</li><li data-cont="captain">老船长</li></ul></nav><section id="shine" class="show">阳光</section><section id="beach">沙滩</section><section id="cacti">仙人掌</section><section id="captain">老船长</section>
</div>
<script>var liNavArr = document.querySelectorAll("nav li");for (var i = 0; i < liNavArr.length; i++) {liNavArr[i].onclick = function (ev) {var li = document.querySelector(".current");li.classList.remove("current");this.classList.add("current");var id = this.dataset["cont"];var oldSec = document.querySelector(".show");oldSec.classList.remove("show");var curSec = document.querySelector("#" + id);curSec.classList.add("show");}}
</script>
</body>
</html>

转载于:https://www.cnblogs.com/wuqiuxue/p/8043468.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/354429.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux 系统安装mongodb数据库---方法1

参考&#xff1a;https://www.jianshu.com/p/994bc7b19b26 参考&#xff1a;https://blog.csdn.net/duan9015/article/details/106447942/ 1、制作 repo 文件 vim /etc/yum.repos.d/mongodb-org-4.2.repo[mongodb-org-4.2] nameMongoDB Repository baseurlhttps://repo.mongo…

JAVA递归实现全排列

全排列&#xff08;permutation&#xff09; 排列组合概念 排列&#xff0c;就是指从给定n个数的元素中取出指定m个数的元素&#xff0c;进行排序 组合&#xff0c;则是指从给定n个数的元素中仅仅取出指定m个数的元素&#xff0c;不考虑排序 全排列 以数字为例&#xff0c;全排…

centos8 linux部署node项目

1、域名解析到服务器 2、上传代码到项目目录 3、数据库&#xff1a; mongo use user user是数据库名 db.nfrc.insert({“name”:admin,“pawwsord”:“123456”}) nfrc集合名&#xff0c;相当于表名 db.nfrc.find() 数据行的id和项目中routes文件下index.js里面的id相一致 …

java云端部署_Jelastic Java云端平台

java云端部署谁在Jelastic背后&#xff1f; 那是我的第一个问题&#xff0c;因此我浏览了Jelastic网站。 回答此问题的最佳方法是查看“ Jelastic团队”部分。 创始人&#xff0c;顾问&#xff0c;特殊合作伙伴构成了一支真正的专业团队。 作为特殊的合作伙伴&#xff0c;您会…

注意点

1&#xff0c;流关闭&#xff0c;尽量不要在一个异常捕获里&#xff0c;那样一个关闭出现问题&#xff0c;下面的流不会再关闭。。。 2&#xff0c;ArrayList<String> list 可以加入null list.add(null);转载于:https://www.cnblogs.com/z2qfei/p/8056760.html

linux系统安装宝塔面板

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

Spring Bootstrap中带有配置元数据的高级配置

在简要介绍了配置元数据并涵盖了我之前的文章《 在Spring Boot中使用配置元数据Pimp您的配置》中的基础知识之后&#xff0c;是时候看看如何进一步执行此步骤并进一步自定义配置了。 在本文中&#xff0c;我计划提出对配置属性的弃用&#xff0c;并讨论各种值提供程序&#xff…

设计模式のStrategyPattern(策略模式)----行为模式

一、问题产生背景 当我们进行一系列处理时&#xff08;员工工资核算&#xff0c;会员管理&#xff0c;计算器&#xff0c;优惠活动&#xff09;&#xff0c;会有很多相似的算法和处理过程&#xff0c;只是由于具体的算法的差异&#xff0c;导致必须不同处理。这些处理和客户端无…

linux安装虚拟环境virtualenv

&#xff08;安装虚拟环境&#xff0c;不然会和其他环境冲突&#xff09; https://blog.csdn.net/wtwcsdn123/article/details/88653179 https://blog.csdn.net/u011798443/article/details/80881931&#xff08;超详细&#xff09; pip install virtualenv 创建python3环境 …

windows系统服务器添加ssl证书

一、为域名申请证书 浏览器打开后系在对应版本&#xff1a; https://keymanager.org/ 注册账号&#xff1a; https://freessl.cn/ 安装刚刚下载的软件&#xff1b; 登录进去就可以申请域名的证书了 二、域名解析 解析完后倒回软件那点击“配置完成&#xff0c;检查一下” …

使用ANTLR在5分钟内用Java解析任何语言:例如Python

我喜欢出于多种目的处理代码&#xff0c;例如静态分析或自动重构。 对我来说&#xff0c;有趣的部分是推理从抽象语法树&#xff08;AST&#xff09;构建的模型。 为此&#xff0c;您需要一种从源文件中获取AST的方法。 使用ANTLR和完整的语法集合可在此处轻松完成&#xff1a;…

[转]Global exception handling in Web API 2.1 and NLog

本文转自&#xff1a;https://stackoverflow.com/questions/25865610/global-exception-handling-in-web-api-2-1-and-nlog In Web API 2.1 is new Global Error Handling. I found some example how to log exceptions into Elmah ( elmah sample ). But I use NLog to log er…

linux服务器配置ssl证书

一、申请ssl证书 这里有申请域名的ssl证书的步骤&#xff1a; https://blog.csdn.net/weixin_38797742/article/details/109471250 二、配置服务器 打开项目对应的配置文件&#xff0c;配置图中三行信息&#xff0c;端口、还有申请的证书的所在目录。 listen 443 ssl; ssl_…

将自定义的集合数据使用pagehelper进行分页

PageHelper 是一个用于在 MyBatis 中进行分页查询的插件&#xff0c;它主要设计用于对从数据库查询的结果进行分页。 如果数据不是直接从 MySQL 数据库中查询得到&#xff0c;而是已经存在于内存中的集合&#xff08;如 List、ArrayList 等&#xff09;&#xff0c;你可以通过以…

视图层的数据绑定

数据绑定WXML 中的动态数据均来自对应 Page 的 data。 只要把data中的数据改变&#xff0c;视图层就会自动改变&#xff0c;无需使用DOM操作。 简单绑定数据绑定使用 Mustache 语法&#xff08;双大括号&#xff09;将变量包起来 使用方法&#xff1a; {{ 内容 }} 在组件中使用…

使用dwebsocket在Django中使用Websocket

一 什么是Websocket WebSocket是一种在单个TCP连接上进行全双工通信的协议 WebSocket使得客户端和服务器之间的数据交换变得更加简单&#xff0c;允许服务端主动向客户端推送数据。在WebSocket API中&#xff0c;浏览器和服务器只需要完成一次握手&#xff0c;两者之间就直接…

ejb 2.0 3.0_Java EE 6测试第I部分– EJB 3.1可嵌入API

ejb 2.0 3.0我们从Enterprise JavaBeans开发人员那里听到的最常见的请求之一就是需要改进的单元/集成测试支持。 EJB 3.1规范引入了EJB 3.1可嵌入API&#xff0c;用于在Java SE环境中执行EJB组件。 与传统的基于Java EE服务器的执行不同&#xff0c;可嵌入式用法允许客户端代码…

如何添加自动更新Play Framework 2.X项目的版本号

我想拥有要发布新版本时自动更新的版本号&#xff0c;因此我着手了解如何使用Play Framework进行此操作。 我发现我可以将其基于sbt-release插件&#xff0c;但是并不是那么简单。 这是我的策略&#xff0c;因此最后我要做的就是运行“ activator release ”&#xff1a; 1.添…

JS容易犯错的this和作用域

var someuser { name: byvoid, func: function() {console.log(this.name); }}; var foo { name: foobar};someuser.func(); // 输出 byvoidfoo.func someuser.func; foo.func(); // 输出 foobarname global;func someuser.func; func(); // 输出 global在 JavaScript 中,…

【原创】Linux安装Redis

【注】说是原创其实是从各个博客中copy出来的&#xff0c;不过经本人总结&#xff0c;也算是半个原创吧&#xff0c;哈哈... 1.安装环境&#xff1a; 2.安装步骤 2.1 安装目录 cd /usr/local mkdir redis 2.2 下载包 wget http://download.redis.io/releases/redis-3.2.11.tar…