JS DOM之父节点

元素.parentNode : 只读 属性 当前节点的父级节点。

<script>
window.onload = function() {
	
	var aA = document.getElementsByTagName('a');
	
	for (var i=0; i<aA.length; i++) {
		
		aA[i].onclick = function() {
			
			/*
				元素.parentNode : 只读 属性 当前节点的父级节点
			*/
			
			this.parentNode.style.display = 'none';	
		}	
	}
}
</script>
</head>

<body>
	<ul id="ul1">
        <li>11111 <a href="javascript:;">隐藏</a></li>
        <li>22222 <a href="javascript:;">隐藏</a></li>
        <li>33333 <a href="javascript:;">隐藏</a></li>
        <li>44444 <a href="javascript:;">隐藏</a></li>
    </ul>
</body>

元素.offsetParent : 只读 属性 离当前元素最近的一个有定位属性的父节点
如果没有定位父级,默认是body
alert( oDiv3.offsetParent.id );
ie7以下,如果当前元素没有定位默认是body,如果有定位则是html
#div2 {background: green; position:relative;}
alert( oDiv3.offsetParent.tagName );
ie7以下,如果当前元素的某个父级触发了layout,那么offsetParent就会被指向到这个触发了layout特性的父节点
#div2 {background: green; zoom: 1;}
alert( oDiv3.offsetParent.id );	
//layout	
	/*alert( document.getElementById('div2').currentStyle.hasLayout );*/
示例代码:
<style>
div {padding: 40px 50px;}
#div1 {background: red;}
#div2 {background: green;}
#div3 {background: orange;}
</style>
<script>
window.onload = function() {
	
	var oDiv3 = document.getElementById('div3');
	
	//parentNode : 父节点
	//alert( oDiv3.parentNode.id );
	
	//layout
	
	/*alert( document.getElementById('div2').currentStyle.hasLayout );*/
	
	alert( oDiv3.offsetParent.id );	
}
</script>
</head>

<body id="body1">
	<div id="div1">
    	<div id="div2">
        	<div id="div3"></div>
        </div>
    </div>
</body>

   
    
    



     
      
      




     
      
      


猜你喜欢

转载自blog.csdn.net/SkullSky/article/details/61916114