获取表单元素,dom树的遍历与常用属性
获取表单元素
console.log(document.forms[0]);
form.idconsole.log(document.forms.login);
input:nameconsole.log(document.forms.login.email);
valueconsole.log(document.forms.login.email.value);
DOM遍历
第一个firstElementChildul.firstElementChild.style.backgroundColor = "yellow";
下一个nextElementSiblingul.firstElementChild.nextElementSibling.style.backgroundColor = "green";
前一个previousElementSiblingul.lastElementChild.previousElementSibling.style.backgroundColor = "lightgreen";
最后一个lastElementChildul.lastElementChild.style.backgroundColor = "yellow";
父节点parentElementul.lastElementChild.parentElement.style.border = "4px solid";
元素节点parentNodeul.lastElementChild.parentNode.style.border = "4px solid red";
dom的增删改
增加元素 append
for (let i = 0; i < 5; i++) {
const li = document.createElement("li");
li.textContent = "item" + (i + 1);
ul.append(li);
}
移除 removeul.lastElementChild.remove();
替换 replaceChild
const last = document.querySelector("ul li:last-of-type");
const a = document.createElement("a");
a.textContent = "https://php.cn";
ul.replaceChild(a, last);
js操作元素内容常用方法
textContent:返回元素以及后代元素中的所有内容,包括style,display:none的内容
innerText:返回元素以及后代中的文本
innerHTML:返回内部的html中的字符串
outerHTML:返回当前节点的自身的html字符串
textContent首选,innerText,2016年才成为w3c标准
innerHTML可解析html字符,innerText:不解析html 字符
留言板
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>dom实战:留言板</title>
</head>
<body>
<input type="text" onkeydown="addMsg(this)" placeholder="请输入留言内容" autofocus />
<ul class="list"></ul>
<script>
function addMsg(ele) {
console.log(ele);
console.log(event);
console.log(event.key);
if (event.key === "Enter") {
const ul = document.querySelector(".list");
if (ele.value.length === 0) {
alert("留言板内容不为空");
ele.focus();
return false;
}
const li = document.createElement("li");
li.textContent = ele.value;
ul.append(li);
ul.insertAdjacentElement("afterbegin", li);
ul.lastElementChild.style.backgroundColor = "yellow";
ele.value = null;
ele.focus();
}
}
</script>
</body>
</html>
dataset对象
dataset 可读可写
function getIndex(btn) {
console.log("点击了第", btn.dataset.index, "个按钮");
}
const user = document.querySelector(".user");
console.log(user.dataset.email);
console.log(user.dataset.workUnit);
user.dataset.workUnit = "php.cn";
console.log(user.dataset.workUnit);
获取元素的计算样式
getComputedStyle
const div = document.querySelector("div");
console.log(window.getComputedStyle(div).width);
console.log(window.getComputedStyle(div).height);
classlist对象常用方法
1.传统方式
const h2 = document.querySelector("h2");
h2.className = "red bgc";
2.classList add添加
h2.classList.add("red");
h2.classList.add("bgc");
3.contains;判断console.log(h2.classList.contains("bgc"));
4.remove 移除classh2.classList.remove("bgc");
5.replace 替换h2.classList.replace("red", "blue");
6.toggle:切换classh2.classList.toggle("bd");
事件的添加与派发
1.事件添加
const btn1 = document.querySelector("button:first-of-type");
btn1.onclick = function () {
console.log(event);
};
事件派发
const btn3 = document.querySelector("button:nth-of-type(3)");
let i = 0;
btn3.addEventListener(
"click",
() => {
console.log("恭喜你,又赚了" + i + "元");
i += 0.8;
},
false
);
上一篇: centos 给添加用户提权
推荐阅读
-
闭包的原理与经典应用场景,访问器属性,类与对象的创建与成员引用,数组与对象的解构过程与经典案例,JS引入到浏览器中的的方法及获取DOM元素的两个API
-
优雅的获取表单元素、dom树的遍历与常用属性、dom元素的增删改操作、js操作元素内容的几个常用方法、元素的dataset对象、获取元素的计算样式、元素的classList 对象常用方法、事件的添加与派发
-
闭包的原理与经典应用场景,访问器属性,类与对象的创建与成员引用,数组与对象的解构过程与经典案例,JS引入到浏览器中的的方法及获取DOM元素的两个API
-
优雅的获取表单元素、dom树的遍历与常用属性、dom元素的增删改操作、js操作元素内容的几个常用方法、元素的dataset对象、获取元素的计算样式、元素的classList 对象常用方法、事件的添加与派发
-
通过js获取元素表单以及遍历dom树和对元素的增删改查js操作内容演练实战了留言板的操作并对自定义属性: dataset对象初步的了解以及对js操作class和classList属性对象事件的添加与删除练习与了解
-
表单元素获取,dom树的遍历与常用属性,dom元素的增删改, js操作元素内容,留言板实例,dataset对象,获取元素计算样式,classList 对象常用方法 ,事件的添加与派发
-
通过js获取元素表单以及遍历dom树和对元素的增删改查js操作内容演练实战了留言板的操作并对自定义属性: dataset对象初步的了解以及对js操作class和classList属性对象事件的添加与删除练习与了解
-
表单元素获取,dom树的遍历与常用属性,dom元素的增删改, js操作元素内容,留言板实例,dataset对象,获取元素计算样式,classList 对象常用方法 ,事件的添加与派发
-
JS的闭包、访问器属性、类与对象的创建和解构、获取DOM元素的二个API学习小结
-
JS获取表单元素、dom树遍历增删改、操作元素内容、自定义属性、操作css、事件小结