jQuery detach()和empty()方法

2020-07-16 10:05:23
jQuery 刪除元素除了上節教學介紹的 remove() 方法外,還有 detach() 和 empty() 方法,本節教學就對這兩個方法進行介紹。

jQuery detach()方法

在 jQuery 中,detach() 和 remove() 的功能雖然相似,都是將某個元素及其內部所有內容刪除,但是兩者也有明顯的區別。
  • remove() 方法用於“徹底”刪除元素。所謂的“徹底”,指的是不僅會刪除元素,還會把元素系結的事件刪除;
  • detach() 方法用於“半徹底”刪除元素。所謂的“半徹底”,指的是只會刪除元素,不會把元素系結的事件刪除。

語法:

$().detach()


舉例:
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title></title>
    <script src="js/jquery-1.12.4.min.js"></script>
    <script>
        $(function () {
            $("li").click(function () {
                alert("歡迎來到C語言中文網!")
            });
            $("#btn").click(function () {
                var $li = $("li:nth-child(4)").remove();
                $($li).appendTo("ul");
            });
        })
    </script>
</head>
<body>
    <ul>
        <li>HTML</li>
        <li>CSS</li>
        <li>JavaScript</li>
        <li>jQuery</li>
        <li>Vue.js</li>
    </ul>
    <input id="btn" type="button" value="刪除" />
</body>
</html>
預設情況下,預覽效果如圖 1 所示。
默認效果
圖 1:預設效果