Element:prepend() 方法

Baseline 已廣泛支援

此功能已成熟,可跨多種裝置和瀏覽器版本工作。它自 ⁨2018 年 4 月⁩ 起已在所有瀏覽器中可用。

Element.prepend() 方法在 Element 的第一個子元素之前插入一組 Node 物件或字串。字串會被插入為等效的 Text 節點。

語法

js
prepend(param1)
prepend(param1, param2)
prepend(param1, param2, /* …, */ paramN)

引數

param1, …, paramN

要插入的一組 Node 物件或字串。

返回值

無(undefined)。

異常

HierarchyRequestError DOMException

在節點無法插入到層次結構中的指定位置時丟擲。

示例

插入元素

js
let div = document.createElement("div");
let p = document.createElement("p");
let span = document.createElement("span");
div.append(p);
div.prepend(span);

console.log(div.childNodes); // NodeList [ <span>, <p> ]

插入文字

js
let div = document.createElement("div");
div.append("Some text");
div.prepend("Headline: ");

console.log(div.textContent); // "Headline: Some text"

插入元素和文字

js
let div = document.createElement("div");
let p = document.createElement("p");
div.prepend("Some text", p);

console.log(div.childNodes); // NodeList [ #text "Some text", <p> ]

prepend 方法是不可作用域的

prepend() 方法不會作用於 with 語句。更多資訊請參見 Symbol.unscopables

js
let div = document.createElement("div");

with (div) {
  prepend("foo");
}
// ReferenceError: prepend is not defined

規範

規範
DOM
# ref-for-dom-parentnode-prepend①

瀏覽器相容性

另見