Loading [MathJax]/extensions/tex2jax.js

2011年6月8日水曜日

jQueryのempty()とremove()

jQueryは似たようなセレクターやメソッドがいくつか存在しますが、比べてみることでその違いをはっきりさせておくと覚え易いです。

empty()メソッドとremove()メソッドの違い。
  • empty()は中身を削除する。
  • remove()はそのもの本体ごと削除する。
  • remove([exp])でセレクターの条件にあったものだけ削除されます。

例:
html
  1. <h1>jQuery(empty and remove)</h1><ul><li id="first">1.Text</li>  
  2. <li id="second">2.Text<b>Strong</b>TextText<i>Em</i></li>  
  3. <li id="third">3.Text<b>Strong</b>Text</li>  
  4. <li id="fourth">4.Text<i>i</i>TextText</li>  
  5. </ul><form action=""><input id="btn1" type="button" value="empty">  
  6.    <input id="btn2" type="button" value="remove">  
  7.    <input id="btn3" type="button" value="remove(':has(em)')">  
  8.    <input id="btn4" type="button" value="remove(':contains("Strong" )')">  
  9.   </form>  

cssは分かりやすいように色付け(お好みで)

  1. li {  
  2.   background-color: lavender;  
  3.   border1px solid royalblue;  
  4.   heightauto;  
  5.   width : 400px;  
  6.   padding5px;   
  7. }  
  8.   
  9. strong {  
  10.   background-color: seashell;  
  11.   border1px solid fuchsia;  
  12. }  
  13.   
  14. em {  
  15.   background-color: beige;  
  16.   border1px solid chocolate;  
  17. }  
  18.   
  19. i {  
  20.   background-color: lightsalmon;  
  21.   border1px solid tomato;  
  22. }  

jQuery部分
empty()とremove()とremove([exp])で変化を見ます
  1. jQuery(function() {  
  2.  //liにempty()を適用します  
  3.  $("#btn1").click(function() {  
  4.   $('li').empty();  
  5.  });   
  6.  //liにremove()を適用します  
  7.  $("#btn2").click(function() {  
  8.   $('li').remove();  
  9.  });   
  10.  //em要素が含まれるliにremove()が適用されます  
  11.  $("#btn3").click(function() {  
  12.   $('li').remove(':has(em)');  
  13.  });   
  14.  //文字列[Strong]が含まれるliにremove()が適用されます  
  15.  $("#btn4").click(function() {  
  16.   $('li').remove(':contains("Strong")');  
  17.  });  
  18. });  

初期状態

empty()を使用した場合

remove()を使用した場合

remove(':has(em)')を使用した場合

remove(':contains("Strong")')を使用した場合

0 件のコメント:

コメントを投稿

Pythonで地図空間データを扱う⑤

ベースの地図が出来た所で、他のデータを被せてみます。 国土地理院の  500mメッシュ別将来推計人口データ  を使用します。 同じく神奈川県のデータ  500m_mesh_suikei_2018_shape_14.zip をダウンロードします。 ベースの地図データと同じ場所に展開...