jQuery文檔操作

jQuery文檔操作

插入操作

<!DOCTYPE html>
<html>

    <head>
        <meta charset="UTF-8">
        <title>文檔處理_插入操作</title>
        <script src="../../js/jquery-1.11.0.min.js" type="text/javascript" charset="utf-8"></script>
        <script type="text/javascript">
            /**
             * 需求 
             *  在id=edu下增加<option value="大專">大專</option> 
             */

            /**
             * 方法分析:
             *  內部插入
             *      1.append(content):內部結尾處,將B追加到A里面去
             *      2.appendTo(content):內部結尾處,將A追加到B里面去
             *      3.prepend(content):內部開始處,將B追加到A里面去
             *      4.prependTo(content):內部開始處,將B追加到A里面去
             *  外部插入
             *      1.after(content):外部,將B追加到A后面
             *      2.before(content):外部,將A追加到B前面
             *      3.insertAfter(content):外部,將A追加到B后面
             *      4.insertBefore(content)::外部,將A追加到B前面
             */

            $(function() {
                // 追加 option 內容大專
                // 創建元素
                var $newNode = $("<option value='大專'>大專</option>");
                
                //內部插入
                //$("#edu").append($newNode);   // 內部結尾,將B追加到A里面去
                //$("#edu").prepend($newNode);  // 內部開始,將B追加到A里面去

                //外部插入
                //$("option[value='本科']").after($newNode);
                $newNode.insertBefore($("option:contains('碩士')"));
            });
        </script>

    </head>

    <body>
        <select id="edu">
            <option value="博士">博士</option>
            <option value="碩士">碩士</option>
            <option value="本科">本科</option>
            <option value="高中">高中</option>
        </select>

    </body>

</html>

復制操作

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>文檔處理_復制操作</title>
        <script type="text/javascript" src="../../js/jquery-1.11.0.min.js" ></script>
        <script>
            /**
             * 需求
             *  1.單擊蘋果、橘子或者菠蘿列表項,復制點擊的內容并追加到ul的末尾
             *  2.單擊蘋果、橘子或者菠蘿列表項,復制點擊的內容并追加到ul的末尾,要求復制后的內容也具有復制的能力
             */
            
            /**
             * 方法分析:
             *  1.clone():克隆匹配的DOM元素并且選中這些克隆的副本。
             *  2.clone():元素以及其所有的事件處理并且選中這些克隆的副本(簡言之,副本具有與真身一樣的事件處理能力)
             */
        
             $(function(){
                //點擊li列表項,將當選點擊的li內容追加到ul末尾
                $("ul li").click(function(){
                    //$(this).clone().appendTo("ul"); // 復制當前點擊的節點,并將它追加到<ul>元素
                    $(this).clone(true).appendTo("ul");//設置參數true后,復制后的內容也具備單擊事件
                })   
              });
        </script>
    </head>
    <body>
        <p title="選擇你最喜歡的水果." >你最喜歡的水果是?</p>
        <ul>
          <li title='蘋果'>蘋果</li>
          <li title='橘子'>橘子</li>
          <li title='菠蘿'>菠蘿</li>
        </ul>
    </body>
</html>

替換操作

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>文檔處理_替換操作</title>
        <script type="text/javascript" src="../../js/jquery-1.11.0.min.js" ></script>
        <script>
            $(function(){
                //將B的內容替換掉A處的內容
                $("p").replaceWith("<strong>你最不喜歡的水果是?</strong>"); 
                // 同樣的實現: $("<strong>你最不喜歡的水果是?</strong>").replaceAll("p"); 
            });
        </script>
    </head>
    <body>
        <p title="選擇你最喜歡的水果." >你最喜歡的水果是?</p>
        <ul>
          <li title='蘋果'>蘋果</li>
          <li title='橘子'>橘子</li>
          <li title='菠蘿'>菠蘿</li>
        </ul>
    </body>
</html>

刪除操作

<!DOCTYPE html>
<html>

    <head>
        <meta charset="UTF-8">
        <title>文檔處理_刪除操作</title>
        <script type="text/javascript" src="../../js/jquery-1.11.0.min.js"></script>
        <script type="text/javascript">
            /**
             * 需求
             *  分別使用detach和remove 刪除帶有click事件的p標簽,刪除后再將p 重新加入body 查看事件是否存在
             */
            
            /**
             * 方法分析
             *  1.remove():刪除節點后,事件也會刪除
             *  2.detach():刪除節點后,事件會保留 從1.4新API 
             *  3.empty():清空元素中的所有后代節點。(這個案例是要刪除而不是清空,需要注意)
             */
            
            /**
             * 代碼實現 
             */
            $(function() {
                $("p").click(function() {
                    alert($(this).text());
                });
                // 使用remove方法刪除 p元素,連同事件一起刪除
                //var $p = $("p").remove();
                // 使用detach刪除,事件會保留
                var $p = $("p").detach();

                $("div").append($p);
            });
        </script>

    </head>

    <body>
        <p>AAA</p>
        
        <div>BBB</div>
    </body>

</html>

刪除相關操作的區別

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>刪除相關操作的區別</title>
        <script type="text/javascript" src="../../js/jquery-1.11.0.min.js" ></script>
        <script>
            $(function(){
                //清空第二個li元素節點的所有后代節點(此處是文本節點橘子),通過firebug查看html源碼驗證
                //$("ul li:eq(1)").empty();
                
                //刪除第一個li元素節點
                $("ul li:eq(0)").remove();
            });
        </script>
    </head>
    <body>
        <p title="選擇你最喜歡的水果.">你最喜歡的水果是?</p>
        <ul>
            <li title='蘋果'>蘋果</li>
            <li title='橘子'>橘子</li>
            <li title='菠蘿'>菠蘿</li>
        </ul>
    </body>
</html>
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容