jquery刪除前n個li元素程式碼例項

antzone發表於2017-04-18

如果要刪除某一個指定的li元素可以參閱jquery刪除指定li元素簡單介紹一章節。

下面分享一段程式碼例項,它實現了刪除前n個li元素的功能。

程式碼例項如下:

[HTML] 純文字檢視 複製程式碼
<!DOCTYPE html> 
<html> 
<head> 
<meta charset=" utf-8"> 
<meta name="author" content="http://www.softwhy.com/" /> 
<title>螞蟻部落</title> 
<style type="text/css"> 
ul li{ 
  list-style:none; 
  font-size:12px; 
  line-height:25px; 
}  
</style> 
<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>
<script type='text/javascript'>
$(document).ready(function(){
  $("#bt").click(function(){
    for (var count = 0; count < 3; count++) {
      $("li").eq(0).remove();
    }
  })
})
</script>
</head> 
<body> 
<ul id="box"> 
  <li>螞蟻部落歡迎您,只有努力奮鬥才會有美好的明天。</li> 
  <li>沒有人一開始就是高手,必須要通過虛心學習。</li> 
  <li>每一天都是新的,要好好珍惜。</li> 
  <li>只有當下的時間才是真實的,下一秒都是虛幻的。</li> 
  <li>分享的精神和互助的胸懷是進步的最大源動力。</li> 
</ul> 
<input type="button" id="bt" value="檢視效果"/>
</body> 
</html>

上面的程式碼實現了我們的要求,能夠刪除li元素列表中的前三個元素。

可能有朋友會有這樣的疑問,為什麼不採用如下程式碼:

[JavaScript] 純文字檢視 複製程式碼
for (var count = 0; count < 3; count++) {
  $("li").eq(count).remove();
}

這是因為每一次執行remove()方法,$("li")獲取的元素數目都會發生變化,比如第一次執行remove()之後,li元素列表變為:

[HTML] 純文字檢視 複製程式碼
<li>沒有人一開始就是高手,必須要通過虛心學習。</li> 
<li>每一天都是新的,要好好珍惜。</li> 
<li>只有當下的時間才是真實的,下一秒都是虛幻的。</li> 
<li>分享的精神和互助的胸懷是進步的最大源動力。</li>

當第二次執行的時候,count變成1,那麼刪除的就不是"<li>沒有人一開始就是高手,必須要通過虛心學習。</li>"這個li元素了,而是"<li>每一天都是新的,要好好珍惜。</li>"這個li元素,所以就會導致錯誤。

$("li")內部其實是使用的getElementsByTagName()方法實現的,此方法獲取元素是實時動態的,具體可以參閱getElementsByTagName()獲取元素是動態的一章節。

相關文章