选择不遵循css语法的Id

时间:2018-02-19 02:00:07

标签: javascript

<div id="foo\bar"></div>
<div id="foo:bar"></div>
document.querySelector('#foo\\\\bar'); // Match the first div

在官方文档中提到,为了匹配不遵循CSS语法的ID或选择器(例如,通过不恰当地使用冒号或空格),必须使用反斜杠转义字符。

由于反斜杠是JavaScript中的转义字符,如果要输入文字字符串,则必须将其转义两次(一次用于JavaScript字符串,另一次用于querySelector),但在上面的代码中,它们使用反斜杠三次

我无法理解这种逻辑。

1 个答案:

答案 0 :(得分:0)

如果我们需要两次逃脱它,它也将被解除两次:

1. \\\\ -> \\
2. \\ -> \