元素.textContent
//jQuery
$元素.text(“新内容”)(3)表单元素的值//DOM
元素.value//jQuery
$元素.val(“新值”)举例:使用元素内容实现表单验证;
操作元素的内容和值
用户名:
密码:
```
2. 修改属性
(1)字符串类型的 HTML 标准属性
//DOM/
//旧核心DOM/
元素.getAttribute("属性名")
元素.setAttribute("属性名","新值")
//新HTML DOM
元素.属性名=新值
//jQuery
$元素.attr("属性名","新值")
$元素.prop("属性名","新值")
举例:点击图片切换下一张;
<body>
<h1>操作元素的属性</h1>
<img src="img/1.jpg" alt="1">
<script src="js/jquery-1.11.3.js"></script>
<script>
//DOM 4步
// 1. 查找触发事件的元素
// 查找img
$("img")
// 2. 绑定事件处理函数
.click(function () {
// 3. 查找要修改的元素
// 修改img本身
var $this = $(this);
// 4. 修改元素
// 4.1取出当前img元素中alt属性值转为整数
var alt = parseInt(
$this.attr("alt")
);
// 4.2如果属性值<4,就++;否则变回1
if (alt < 4) {
alt++;
} else {
alt = 1;
}
// 4.3.3将新的alt值拼成图片路径,放入当前img的src属性中
$this.attr({
src: `img/${alt}.jpg`,
alt: alt
});
})
</script>
</body>
(2)bool 类型的 HTML 标准属性
//DOM
//HTML DOM
元素.属性名
//jQuery
$元素.prop("属性名",新bool值)
(3)自定义扩展属性
//DOM
//旧核心DOM:
元素.getAttribute()
元素.setAttribute()
//HTML5:
元素.dataset.属性名
//jQuery
$元素.attr()
举例:点小图片,切换大图片;
<body>
<img src="img/1.jpg" data-click data-target="img/1-l.jpg" class="my-small">
<img src="img/2.jpg" data-click data-target="img/2-l.jpg" class="my-small">
<img src="img/3.jpg" data-click data-target="img/3-l.jpg" class="my-small">
<img src="img/4.jpg" data-click data-target="img/4-l.jpg" class="my-small">
<hr />
<img src="img/1-l.jpg" class="my-big">
<script src="js/jquery-1.11.3.js"></script>
<script>
//点击小图片,下方my-big中显示大图片
//DOM 4步
// 1. 查找触发事件的元素
// 查找所有带有data-click属性的img元素
$("[data-click]")
// 2. 绑定事件处理函数
.click(function () {
// 3. 查找要修改的元素
// 修改下方大图
var $big = $(".my-big");
// 4. 修改元素
// 4.1获得当前点击的img的data-click属性值保存的大图片路径
var src = $(this).attr("data-target");
// 4.2将大图路径设置给大图的src属性
$big.attr("src", src);
})
</script>
</body>
3. 修改样式
//DOM
//修改内联样式
元素.style.css属性="新值"
//获取完整样式
getComputedStyle(元素)
//jQuery
//获取css属性值、修改css属性值
$元素.css("css属性","新值")
//如果.css()中没有给新值,则.css()底层自动执行getComputedStyle()操作,获取属性值
//如果.css()中给了新值,则.css()底层自动执行.style.css属性,执行修改操作
批量修改一个元素的多个css属性:
//DOM
元素.className="class名" //只能整体替换所有class,不便于修改其中某一个class
//jQuery
$元素.addClass("className") //添加一个class
$元素.removeClass("className") //去除一个class
$元素.hasClass("className") //判断是否有某个calss
$元素.toggleClass("className") //在有或没有一个class之间来回切换
举例:实现双态按钮;
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
.btn {
padding: 5px 10px;
border-radius: 3px;
border: 1px solid #aaa;
outline: none;
}
.up {
background: #fff;
color: #333;
}
.down {
background: #ddd;
color: #fff;
}
</style>
</head>
<body>
<button class="btn up">双态按钮</button>
<script src="js/jquery-1.11.3.js"></script>
<script>
//双态按钮: 让按钮的class在up和down之间切换
//DOM 4步
//1. 查找触发事件的元素
$(".btn")
//2. 绑定事件处理函数
.click(function () {
//3. 查找要修改的元素
var $this = $(this);
if ($this.hasClass("down")) {
$this.removeClass("down")
} else {
$this.addClass("down")
}
//$(this).toggleClass("down") //等价于if else
//4. 修改元素
})
</script>
</body>
二、按节点间关系查找
1. DOM 两种关系,六个属性
(1)父子关系
元素.parentElement //父元素
元素.children //所有直接子元素
元素.firstElementChild //第一个直接子元素
元素.lastElementChild //最后一个直接子元素
(2)兄弟关系
元素.previousElementSibling //前一个兄弟元素
元素.nextElementSibling //后一个兄弟元素
2. jQuery两种关系,八个属性
(1)父子关系
$元素.parent() //父元素
$元素.children() //所有直接子元素
$元素.children("选择器") //只选择符合要求的个别直接子元素
$元素.find("选择器") //选择所有后代中符合要求的元素
$元素.children(":first-child") //第一个直接子元素
$元素.children(":last-child") //最后一个直接子元素
(2)兄弟关系
$元素.prev() //前一个兄弟
### 一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
![]()