2014-12-08 48 views
0

我试图从lynda.com删除HTML的这一部分:Lynda.com removeChild之

<div class="course-banner-artist"> Illustration by John Hersey </div> 

这是我以前尝试过,但它是无济于事:

var i = 0 
var bannerArtist = document.getElementsByClassName('course-banner-artist'); 
for (i = 0; i < banner.length; i++){ 
    bannerArtist[i].parentNode.removeChild(bannerArtist[i]); 
} 
+2

bannerArtist.length,而不是banner.length – 2014-12-08 05:25:35

回答

0

你的for循环被搞砸了。您正在引用未定义的对象。

固定为您

var parent = document.getElementById("parent") 
 
var bannerArtist = document.getElementsByClassName('course-banner-artist'); 
 

 
for (i = 0; i < bannerArtist.length; i++) { 
 
    parent.removeChild(bannerArtist[i]); 
 
} 
 

 
parent.removeChild(bannerArtist[0])
<!DOCTYPE html> 
 
<html> 
 

 
<head> 
 
    <meta charset="utf-8"> 
 
    <title>JS Bin</title> 
 
</head> 
 

 
<body> 
 
    <div id="parent"> 
 
    <div class="course-banner-artist">Some content</div> 
 
    <div class="course-banner-artist">Some content</div> 
 
    <div class="course-banner-artist">Some content</div> 
 
    </div> 
 

 
</body> 
 

 
</html>

+0

您正在删除[0]两次,并且请为'var(var i ...')添加一个'var' – mplungjan 2014-12-08 05:35:51

0

正如帕特里克·埃文斯指出 “bannerArtist.length,不banner.length” 是问题。感谢所有帮助过的人。