/*
父节点:parentNode
用于关闭二维码
用法:.parentNode
调用者:子元素
兼容性:兼容ie678
*/
var a = document.getElementById(“a”);
a.onclick = function(){
this.parentNode.style.display = “none”;
}
/----------------------------------------------------------------------/
/*
兄弟节点:nextSibling/privousSibling(兼容ie678);nextElementSibling/priviousElementSibling(在ie678中没有这个方法,有严重的兼容问题)
兄弟:sibling
上一个:privious
下一个:next
节点:element
注意:换行和空格都会对nextSibling和priviousSibling有影响
兼容写法:
var div = div1.nextElementSibling || div1.nextSibling ;
*/
var div1 = document.getElementById('div1');
console.log(div1.nextSibling.innerHTML);//下一节点(可以是文本节点)
//换行空格有影响(换行后打印underfind)
console.log(div1.nextElementSibling);//下一个元素节点
//换行空格无影响
//兼容写法:
var div = div1.nextElementSibling || div1.nextSibling ;
console.log(div);
/----------------------------------------------------------------------/
/*
最重要的children和parent;
注意:children兼容浏览器,但在ie678中注释算一个节点,在ie678中使用时没注意将注释写在外面
调用者:父元素
/
var div = document.getElementById(‘div’);//获取父元素中的全部子元素
console.log(div.children[0]);//获取父元素中的第一个子元素
/----------------------------------------------------------------------/
/
创建节点:document.creatElement(“span”);
插入节点:document.body.appendChild();
insertBefore(插入的节点,在这个元素前插入)
调用者:父元素
*/
var div = document.getElementsByTagName("div")[0];//获取父元素节点
var p = document.getElementById("p");
var span = document.createElement("span");//创建新节点
span.innerHTML="我是新增的span标签。";//给创建的节点赋值
div.insertBefore(span,p);//父元素调用
}
</script>
</head>
<body>
<div id="div">
<p id="p">?????</p>
<span id="span" class="box">dfd
<a href="javascript:;" id="a">x</a>
<!-- javasc:;超链接禁用 -->
</span>
<span></span>
<span></span>
<span></span>
</div>
<div id="div1"></div>
<div>ss</div>
</body>
</html>