當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


JQuery .appendTo()用法及代碼示例


用法
.appendTo( target ) => jQuery

說明:將匹配元素集中的每個元素插入到目標的末尾。

  • 添加的版本:1.0.appendTo( target )

    • target
      類型:SelectorhtmlStringElementArrayjQuery
      選擇器、元素、HTML 字符串、元素數組或 jQuery 對象;匹配的元素集將插入到此參數指定的元素的末尾。

.append().appendTo() 方法執行相同的任務。主要區別在於syntax-specifically,內容和目標的放置。對於 .append() ,方法前麵的選擇器表達式是插入內容的容器。另一方麵,對於 .appendTo() ,內容在方法之前,作為選擇器表達式或作為動態創建的標記,它被插入到目標容器中。

考慮以下 HTML:

<h2>Greetings</h2>
<div class="container">
  <div class="inner">Hello</div>
  <div class="inner">Goodbye</div>
</div>

我們可以創建內容並一次將其插入到多個元素中:

$( "<p>Test</p>" ).appendTo( ".inner" );

每個內部 <div> 元素都會獲得以下新內容:

<h2>Greetings</h2>
<div class="container">
  <div class="inner">
    Hello
    <p>Test</p>
  </div>
  <div class="inner">
    Goodbye
    <p>Test</p>
  </div>
</div>

我們還可以選擇頁麵上的一個元素並將其插入到另一個元素中:

$( "h2" ).appendTo( $( ".container" ) );

如果以這種方式選擇的元素插入到 DOM 中其他位置的單個位置,它將被移動到目標(未克隆)並返回由插入元素組成的新集合:

<div class="container">
  <div class="inner">Hello</div>
  <div class="inner">Goodbye</div>
  <h2>Greetings</h2>
</div>

但是,如果有多個目標元素,則將為除最後一個目標之外的每個目標創建插入元素的克隆副本,並返回新集合(原始元素加上克隆)。

在 jQuery 1.9 之前,append-to-single-element case 沒有創建新的集合,而是返回了原來的集合,這使得很難使用.end()當與未知數量的元素一起使用時,該方法可靠。

其他注意事項:

  • 根據設計,任何接受 HTML 字符串的 jQuery 構造函數或方法(jQuery().append().after() 等)都可能執行代碼。這可以通過注入腳本標簽或使用執行代碼的 HTML 屬性(例如,<img onload="">)來實現。不要使用這些方法插入從 URL 查詢參數、cookie 或表單輸入等不受信任的來源獲得的字符串。這樣做會引入cross-site-scripting (XSS) 漏洞。在向文檔添加內容之前刪除或轉義任何用戶輸入。
  • jQuery 不正式支持 SVG。在 SVG 文檔上使用 jQuery 方法,除非為該方法明確記錄,否則可能會導致意外行為。從 jQuery 3.0 開始支持 SVG 的方法示例是 addClassremoveClass

例子:

將所有跨度附加到 ID 為 "foo" 的元素(查看 append() 文檔以獲取更多示例)

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>appendTo demo</title>
  <style>
  #foo {
    background: yellow;
  }
  </style>
  <script src="https://code.jquery.com/jquery-3.5.0.js"></script>
</head>
<body>
 
<span>I have nothing more to say... </span>
 
<div id="foo">FOO! </div>
 
<script>
$( "span" ).appendTo( "#foo" );
</script>
 
</body>
</html>

演示:

相關用法


注:本文由純淨天空篩選整理自jquery.com大神的英文原創作品 .appendTo()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。