2016-11-22 65 views
1

所以最近我開始玩DOM的東西,這是非常重要的知道。試圖做一個簡單的腳本,描繪了div 的最後一個元素有HTML。據我所知的div的最後一個子元素是接近底部lastChild(或lastElementChild)undefined in javascript

<div id="java"> 
Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
<span>Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit...</span> 
</div> 

span元素有這麼畫的最後一個子藍

document.getElementById("java").lastChild.innerHTML.style.color = "blue"; 

的JS線所以問題是,我得到Cannot set property 'color' of undefined錯誤即使當我使用lastElementChild像我之前被建議。 有什麼我錯過了?我的意思是,當然有,但那是什麼,我怎樣才能使用lastChild

+2

'style'在'lastChild'上,而不在'innerHTML'上。 'document.getElementById(「java」)。lastChild'確實存在。該錯誤表明'style'是未定義的,而不是'lastChild'。 – Xufox

+0

謝謝! 'document.getElementById(「java」)。lastChild.style.color =「blue」;'工作! –

回答

0

嘗試:

var myContainer = document.getElementById('my-container'); 
var lastElement = myContainer.lastElementChild; 
lastElement.style.backgroundColor = 'rgb(0,0,255)'; 

例子:

var myContainer = document.getElementById('my-container'); 
 
var lastElement = myContainer.lastElementChild; 
 
lastElement.style.backgroundColor = 'rgb(0,0,255)';
#my-container div { 
 
display: inline-block; 
 
margin-right: 24px; 
 
width: 100px; 
 
height: 100px; 
 
background-color: rgb(255,0,0); 
 
}
<div id="my-container"> 
 
<div></div> 
 
<div></div> 
 
<div></div> 
 
<div></div> 
 
</div>

+0

我使用了'document.getElementById(「java」)。lastChild.style.color =「blue」;'所以問題解決了,感謝您的幫助! :) –

1

使用lastElementChild獲得元素

document.getElementById("java").lastElementChild.style.color= "blue"; 
012的最後一個子