CSS: escape() 靜態方法

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2020 年 1 月⁩ 起,所有主流瀏覽器均已支援。

CSS.escape() 靜態方法返回一個字串,其中包含作為引數傳入的已跳脫字元串,主要用於 CSS 選擇器的一部分。

語法

js
CSS.escape(str)

引數

str

要轉義的字串。

返回值

轉義後的字串。

示例

基本結果

js
CSS.escape(".foo#bar"); // "\\.foo\\#bar"
CSS.escape("()[]{}"); // "\\(\\)\\[\\]\\{\\}"
CSS.escape('--a'); // "--a"
CSS.escape(0); // "\\30 ", the Unicode code point of '0' is 30
CSS.escape('\0'); // "\ufffd", the Unicode REPLACEMENT CHARACTER

在上下文中使用的例子

為了在選擇器中使用一個字串,可以使用 escape() 方法來轉義它。

js
const element = document.querySelector(`#${CSS.escape(id)} > img`);

escape() 方法也可以用於跳脫字元串,儘管它會轉義那些實際上不需要轉義的字元。

js
const element = document.querySelector(`a[href="#${CSS.escape(fragment)}"]`);

規範

規範
CSS 物件模型 (CSSOM)
# the-css.escape()-method

瀏覽器相容性

另見