<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>获取元素子节点</title>
<style>
li{
width:20px;
height:30px;
background:red;
margin:5px;
transition:width 2s;//过渡属性,实现从一种样式逐渐改变到另一种样式
}
</style>
</head>
<body>
<ul id='ul1'>
<li>11</li>
<li>22</li>
<li>33</li>
</ul>
<script>
var oUl = document.getElementById('ul1');
var aLi = oUl.childNodes;//获取ul元素的所有子节点
document.onclick = function(){
for(var i = 0; i < aLi.length; i++){
if(aLi[i].nodeType == 1){//判断节点是否为元素节点
aLi[i].style.width = '150px';
}
}
};
</script>
</body>
</html>
上述代码的功能是实现单击文档窗口时,li 元素的长度在 2s 内实现从 20px 逐渐改变为 150px。例 3 中的 transition 是一个 CSS3 属性,实现从一种样式逐渐过渡到另一种样式,该属性需要同时指定在哪个属性上进行样式过渡以及整个过渡时长。样式代码中设置了 li 元素的初始长度,li 元素的最终长度通过 JS 的单击事件来设置。
<script>
var oUl = document.getElementById('ul1');
var aLi = oUl.children;//获取ul元素的所有元素子节点
document.onclick = function(){
for(var i = 0; i < aLi.length; i++){
aLi[i].style.width = '150px';
}
};
</script>
例 1 在 Chrome 浏览器中的运行结果如图 1 和图 2 所示。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>获取元素第一个和最后一个元素子节点</title>
</head>
<body>
<ul id='ul1'>
<li>11</li>
<li>22</li>
<li>33</li>
</ul>
<script>
var oUl = document.getElementById('ul1');
var li1 = oUl.firstElementChild;//获取ul元素的第一个元素子节点
var li2 = oUl.lastElementChild;//获取ul元素的最后一个元素子节点
console.log(li1);
console.log(li2);
</script>
</body>
</html>
上述代码在 Chrome 浏览器中的运行结果如图 3 所示。
版权说明:Copyright © 广州松河信息科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州松河信息科技有限公司 版权所有