节点的属性:
关键字 | 简介 | 示例代码 |
---|---|---|
nodeName | 节点名称 | 示例代码 |
nodeValue | 节点值 | 示例代码 |
nodeType | 节点类型 | 示例代码 |
innerHTML | 元素的文本内容 | 示例代码 |
id value className | 元素上的属性 |
节点名称:
节点值:
<html>
<div id="d1">hello HTML DOM</div>
<script>
function p(s){
document.write(s);
document.write("<br>");
}
var div1 = document.getElementById("d1");
p("document是没有nodeValue的:"+document.nodeValue);
p("元素节点是没有nodeValue的:"+div1.nodeValue);
p("属性节点id的nodeValue:"+div1.attributes[0].nodeValue);
p("内容节点的nodeValue:"+div1.childNodes[0].nodeValue);
</script>
</html>
元素的文本内容:
修改与获取内容的值可以通过 childNodes[0].nodeValue进行
还有个简便办法就是通过innerHTML进行。 效果是一样的。
<html>
<div id="d1">hello HTML DOM</div>
<script>
function changeDiv1(){
document.getElementById("d1").childNodes[0].nodeValue= "通过childNode[0].value改变内容";
}
function changeDiv2(){
document.getElementById("d1").innerHTML= "通过innerHTML改变内容";
}
</script>
<button onclick="changeDiv1()">通过内容节点方式改变div的内容</button>
<button onclick="changeDiv2()">通过innerHTML改变div的内容</button>
</html>
DOM样式:
var d = document.gertelementById("d");
d.style.display = ""none";
<button onclick="hide()">隐藏div</button>
<button onclick="show()">显示div</button>
<br>
<br>
<div id="d">
这是一个div
</div>
<script>
function hide(){
var d = document.getElementById("d");
d.style.display="none";
}
function show(){
var d = document.getElementById("d");
d.style.display="block";
}
</script>
案例练习:
<div id="d0">
<span>id</span>
<span>名称</span>
<span>血量</span>
<span>伤害</span>
</div>
<div id="d1">
<span>1</span>
<span>gareen</span>
<span>340</span>
<span>58</span>
</div>
<div id="d2">
<span>2</span>
<span>teemo</span>
<span>320</span>
<span>76</span>
</div>
<div id="d3">
<span>3</span>
<span>annie</span>
<span>380</span>
<span>38</span>
</div>
<div id="d4">
<span>4</span>
<span>deadbrother</span>
<span>400</span>
<span>90</span>
</div>
var span1 = document.getElementsByTagName("span");
for(i = 0; i < span1.length; i++){
span1[i].style.display = "inline-block";
span1[i].style.width = "200px";
span1[i].style.textAlign = "center";
span1[i].style.lineHeight = "30px";
}
var span2 = document.getElementsByTagName("div");
for(var j=0; j<span2.length; j++){
span2[j].style.borderBottom = "solid 1px #ccc";
span2[j].style.display = "inline-block";
if(!(j%2)){
span2[j].style.backgroundColor = "#f5f5f5";
}
}
另外注意到一点的是 div内容标签要放在<script>标签前面 显示 不然内容没加载出来就对其进行操作 当然是无从下手的.
DOM事件:
关键字 | 简介 | 示例代码 |
---|---|---|
onfocus onblur | 焦点事件 | 示例代码 |
onmousedown onmouseup onmousemove onmouseout | 鼠标事件 | 示例代码 |
onkeydown onkeypress onkeyup | 键盘事件 | 示例代码 |
onclick ondbclick | 点击事件 | 示例代码 |
onchange | 变化事件 | 示例代码 |
onsubmit | 提交事件 | 示例代码 |
onload | 加载事件 | 示例代码 |
this | 当前组件 | 示例代码 |
return false | 阻止事件的发生 |
节点关系:
关键字 | 简介 | 示例代码 |
---|---|---|
节点关系图 | 示例代码 | |
parentNode | 父节点关系 | 示例代码 |
previousSibling nextSibling | 同胞节点关系 | 示例代码 |
childNodes | 子节点关系 | 示例代码 |
childNodes children | childNodes和children的区别 |
创建节点:
关键字 | 简介 | 示例代码 |
---|---|---|
createElement | 创建元素节点 | 示例代码 |
createTextNode | 创建文本节点 | 示例代码 |
createAttribute | 创建属性节点 |
删除节点:
removeChild | 删除元素节点 | 示例代码 |
removeAttribute | 删除属性节点 | 示例代码 |
removeChild | 删除文本节点 |
替换节点:
关键字 | 简介 | 示例代码 |
---|---|---|
replaceChild | 替换节点 | 示例代码 |
插入节点:
关键字 | 简介 | 示例代码 |
---|---|---|
appendChild | 追加节点 | 示例代码 |
insertBefore | 在前方插入节点 | 示例代码 |