我有以下查询选择器。使用Chrome 38我得到一个" SYNERR:不是一个有效的选择器" ..现在有趣的是,在CSS中它运行良好。
tbody > tr[data-index=-1]
为什么JavaScript不喜欢这条路?
答案 0 :(得分:4)
问题在于attribute selectors,
属性值必须是标识符或字符串
但-1
不是有效identifier(强调我的):
在CSS中,标识符(包括元素名称,类和ID) 选择器)只能包含字符[a-zA-Z0-9]和ISO 10646 字符U + 00A0和更高,加上连字符( - )和下划线 (_);它们不能以数字,两个连字符或后跟连字符开头 用数字。
因此,您必须使用string:
字符串可以用双引号或单引号编写 引号。
例如,
tbody > tr[data-index="-1"]