大家好!我是html/css/javascript的新手。 我正在Coursera學習這類課程。 在程序中,我嘗試使用「theRightSide」複製「theLeftSide」並刪除「theRightSide」中的最後一個圖像。 我已經嘗試了兩天的每種方法。但無法修復它。 Chrome說「Uncaught TypeError:無法讀取屬性'parentNode'爲null」。 誰能告訴我錯誤在哪裏?萬分感謝!!!使用javascript刪除元素
<!DOCTYPE html>
<html>
<head>
<title>Document</title>
<style>
img {position: absolute;}
div {position: absolute;width: 500px;height: 500px;}
#rightside {left: 500px;border-left: 1px solid black;}
</style>
</head>
<body onload="generateFaces()">
<h1>Matching Game</h1>
<p>Click on the extra smiling face on the left</p>
<div id="leftside"></div>
<div id="rightside"></div>
<script>
var numberOfFaces=5;
var theLeftSide=document.getElementById("leftside");
var theRightSide=document.getElementById("rightside");
function generateFaces(){
for (var i = 0; i <numberOfFaces; i++) {
var pic=document.createElement("img");
pic.src="smile.png";
pic.style.top=Math.random()*400+"px";
pic.style.left=Math.random()*400+"px";
theLeftSide.appendChild(pic);
};
}
var leftSideImages=theLeftSide.cloneNode(true);
var last_child=leftSideImages.lastChild;
last_child.parentNode.removeChild(last_child);
theRightSide.appendChild(leftSideImages);
</script>
</body>
</html>
體面瀏覽器有['node.remove()'](https://developer.mozilla.org/en-US/docs/Web/API/ ChildNode/remove),而不是'lastChild',你可能想使用'lastElementChild'來確定它不是文本節點或空白區域。 – Rudie
'body.onload'事件處理程序稍後觸發,當主體完成加載時,這就是當您將元素添加到左側時,但您嘗試將這些元素移動到頁面加載時,當它們還沒有到達時。 – adeneo