转义 JavaScript 中 querySelector 的前导数字类名
Escaping leading number classnames for querySelector in JavaScript
所以,我正在尝试运行这个:
document.querySelector('#js-Overlay .3dObject').classList.toggle('flipY');
我确实意识到你必须逃避它,但以下内容不起作用:
document.querySelector('#js-Overlay ''.3dObject').classList.toggle('flipY');
知道我如何成功转义前导数字类名吗?
示例 HTML:
<div id="js-Overlay">
<div class="3dObject"></div>
</div>
这是一个
非法的类名。
选择器级别 4 规范说:
类选择器作为句号(.U+002E) 紧跟标识符
我们如何定义标识符?好吧,该页面链接到CSS 2.1规范。
从 CSS2.1 语法规范:
在 CSS 中,标识符(包括元素名称、类和选择器中的 ID)只能包含
[a-zA-Z0-9]
和 ISO 10646 字符U+00A0
及以上,以及连字符 (-
) 和下划线 (_
);它们不能以数字、两个连字符或连字符后跟数字开头。
因此,该类是不合法的,您不应该期望找到它时遇到麻烦,并且能够找到它 querySelector
.
(也就是说,getElementsByClassName('3dObject')
工作正常。
相关文章:
- 使用全局变量来存储数字(JavaScript)
- 字符串到数字JavaScript
- 查找总和最大的数字(Javascript)
- 将字符串中的重复字符替换为不断增长的数字 [Javascript]
- 选择下拉选项时显示数字-javascript
- 用户在数字上输入金额,然后输出最高数字javascript
- 字母数字 JavaScript 正则表达式失败
- 仅数字 Javascript 表单验证
- 如何从一组特定的数字中找到最接近的更高数字:javascript
- 将字符串 num 转换为数字 JavaScript
- 将字符串转换为数字 Javascript
- 提取两种模式之间的数字 javascript
- 添加两个十六进制数字 javascript 与位移
- 确定是否按下了字母或数字-Javascript
- 可以't将字符串转换为数字javascript我的代码出了什么问题
- 按布尔值,然后按数字(javascript)对对象数组进行排序
- 正则表达式,用于获取方括号之间的字符串和数字-javascript
- If和Else比较数字JavaScript
- 检查变量是网页上的所有数字javascript
- 同时检查模为0的两个不同数字(Javascript)