JS 节点笔记
h5新增自定义属性
<div class="conter" id="conter"></div>
var div = document.getElementById("conter") div.setAttribute("data-index", 1) div.setAttribute("data-list-name", 1000)
// getAttribute获取
console.log(div.dataset);
console.log(div.getAttribute("class"));
console.log(div.getAttribute("data-index")); // h5新增获取自定义属性方法
console.log(div.dataset.index);
console.log(div.dataset["index"]); console.log(div.dataset.listName);
console.log(div.dataset["listName"]);
节点操作
节点层次
1、父级节点
<div class="box">
<span class="erweima">2</span>
<ul class="ul">
<li>2</li>
<li>2</li>
</ul>
</div>
var box = document.querySelector("box")
console.log(box);
// 父节点parentNode
var erweima = document.querySelector(".erweima")
// 得到的是离他最近的节点 如果没有父节点就返回null
console.log(erweima.parentNode);
子节点
<ol class="ol">
<li>123</li>
<li>123</li>
<li>123</li>
<li>123</li>
<li>123</li>
</ol>
// 子节点childNode 获取到所有的子节点 包括换行
var ul = document.querySelector(".ul")
// console.log(ul.childNodes);
console.log(ul.children); var ol = document.querySelector(".ol")
// firstChild获取到的是第一个节点
console.log(ol.firstChild);
// lastchild获取到的啊最后一个节点
console.log(ol.lastChild); // 兼容性问题不推荐使用 ie9以上支持
console.log(ol.firstElementChild);
console.log(ol.lastElementChild); // 实际开发常用的是
console.log(ol.children[0]);
console.log(ol.children[ol.children.length - 1]);
兼容性问题
<div class="group">ssss</div>
<span>4556</span>
var div = document.querySelector(".group")
console.log(div.nextSibling);
console.log(div.nextElementSibling);
console.log(div.previousElementSibling);
创建节点
注意
<ul class="ul2">
<li>123</li>
</ul>
<script>
// 创建节点
var li = document.createElement("li")
var lis = document.createElement("li")
// 添加节点node.appendChild(child) node父节点 child是子节点
var ul = document.querySelector(".ul2")
ul.appendChild(li)
ul.insertBefore(lis, ul.children[0])
</script>
删除节点
<button class="button2">删除</button>
<ul class="ul3">
<li>1</li>
<li>12</li>
<li>13</li>
</ul>
<script>
var ul = document.querySelector(".ul3")
var btn = document.querySelector(".button2")
btn.onclick = function () {
if (ul.children.length == 0) {
this.disabled = false
} else {
ul.removeChild(ul.children[0])
} }
</script>
复制节点
<ul class="ul4">
<li>1</li>
<li>16</li>
<li>12</li>
<li>13</li>
</ul>
<script>
var ul = document.querySelector(".ul4")
var lis = ul.children[0].cloneNode(true);
ul.appendChild(lis)
</script>
JS 节点笔记的更多相关文章
- React.js入门笔记
# React.js入门笔记 核心提示 这是本人学习react.js的第一篇入门笔记,估计也会是该系列涵盖内容最多的笔记,主要内容来自英文官方文档的快速上手部分和阮一峰博客教程.当然,还有我自己尝试的 ...
- JS面向对象笔记二
菜单导航,<JS面向对象笔记一>, 参考书籍:阮一峰之<JavaScript标准参考教程> 一.构造函数和new命令 二.this关键字 三.构造函数和new命令 四.构造函 ...
- JS学习笔记5_DOM
1.DOM节点的常用属性(所有节点都支持) nodeType:元素1,属性2,文本3 nodeName:元素标签名的大写形式 nodeValue:元素节点为null,文本节点为文本内容,属性节点为属性 ...
- 【转】Backbone.js学习笔记(二)细说MVC
文章转自: http://segmentfault.com/a/1190000002666658 对于初学backbone.js的同学可以先参考我这篇文章:Backbone.js学习笔记(一) Bac ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- Vue.js学习笔记(2)vue-router
vue中vue-router的使用:
- js读书笔记
js读书笔记 基本类型的基本函数总结 1. Boolean() 数据类型 转换为true的值 转换为false的值 Boolean true false String 任何非空字符串 "&q ...
- 廖雪峰js教程笔记13 插入DOM
当我们获得了某个DOM节点,想在这个DOM节点内插入新的DOM,应该如何做? 如果这个DOM节点是空的,例如,<div></div>,那么,直接使用innerHTML = '& ...
- js 节点 document html css 表单节点操作
js 节点 document html css 表单节点操作 节点操作:访问.属性.创建 (1)节点的访问:firstChild.lastChild.childNodes.parentChild(父子 ...
随机推荐
- windows python的多进程
最近打比赛,apply操作极慢,队友使用了线程池,用多核开辟多线程跑,加速. 在阿里平台上,都没问题. 我是win10系统+jupyter notebook 多线程那个模块运行,会显示一直运行,p.c ...
- 【API进阶之路】老板给我涨薪30%!如何通过SDK接口搞定千万级流量直播
摘要:看我如何通过API Explorer 的SDK接口搞定千万级流量直播. 最近几个月,我的变化其实还蛮大的,从一个被实习生“无视”的“前浪”,转变成了不仅能够解决技术问题还能解决业务问题(顺手还能 ...
- 【JVM之内存与垃圾回收篇】程序计数器
程序计数器 介绍 JVM 中的程序计数寄存器(Program Counter Register)中,Register 的命名源于 CPU 的寄存器,寄存器存储指令相关的现场信息.CPU 只有把数据装载 ...
- Maven配置文件中的版本使用-SNAPSHOT
SNAPSHOT是什么? SNAPSHOT是快照,是一种特殊的版本,制定了某个当前的开发进度副本.不同于正式版本,Maven每次构建都会在远程仓库中检查新的快照.如此每次发布更新代码的快照到仓库中,新 ...
- JAVA中JSON字符串格式转换
alibabab版本 即com.alibaba.fastjson *以下Node为实体类 //JSON字符串->Map Map map1 = (Map)JSON.parse(strJson); ...
- 在ASP.NET中,<%= %>和<%# %>有什么区别
asp.net中<%#%>出现在repeater gridview等控件中.用以绑定控件的datasource asp.net中<%%>的意思是 上运行c#或者vb代码,比如: ...
- 阿里云OSS服务器的使用
关于文件上传,我们一般使用OSS服务器.大致为两种上传方式: 详情官网参考:https://help.aliyun.com/document_detail/31927.html?spm=a2c4g.1 ...
- iPhone截长图的方法
iPhone手机暂没有长图截取功能,所以我们只能通过别的方式进行长图截取. (2020年4月10日更新) ios13目前可以截长图了,不过只能在Safari中进行长图截取,而且存储形式为pdf格式,下 ...
- 今天上午完成了devicescan,发送了rar包到yzx3233@sina.com
今天上午完成了devicescan,发送了rar包到yzx3233@sina.com 可以正常扫描和输入了. 还有一个最后的问题,就是选择退出后,程序还在后台
- SpringBoot学习之整合Druid的简单应用
一.Druid介绍 Druid简介 Druid是目前Java语言中最好的数据库连接池之一.结合了 C3P0.DBCP 等 DB 池的优点,同时加入了日志监控.Druid 是一个分布式的.支持实时多维 ...