Jquery转义#步骤无法识别的表达式
我将jquery从2.14升级到2.2.0,但总是出现异常: 未捕获错误:语法错误,无法识别的表达式: li[数据目标^=#步骤] 代码: 问题在于Jquery转义#步骤无法识别的表达式,jquery,Jquery,我将jquery从2.14升级到2.2.0,但总是出现异常: 未捕获错误:语法错误,无法识别的表达式: li[数据目标^=#步骤] 代码: 问题在于#步骤 如何转义?从2.2.0版开始,当属性包含#字符时,似乎需要在属性值周围添加引号(值得指出的是,当删除字符#时,它会起作用) 请参见发行说明下的。显然这是一个错误修复 在内部,jQuery将尝试使用方法.querySelectorAll(),该方法抛出一个错误,指出li[data target^=#step]'不是有效的选择器(这就是为什么需要
#步骤
如何转义?从2.2.0版开始,当属性包含
#
字符时,似乎需要在属性值周围添加引号(值得指出的是,当删除字符#
时,它会起作用)
请参见发行说明下的。显然这是一个错误修复
在内部,jQuery将尝试使用方法.querySelectorAll()
,该方法抛出一个错误,指出li[data target^=#step]'
不是有效的选择器(这就是为什么需要引号的原因):
未捕获的语法错误:未能在文档上执行querySelectorAll
:li[数据目标^=#步骤]
不是有效的选择器
根据需要,您应该使用单引号:
var count = $("li[data-target^='#step']").length;
我从来没有遇到过任何问题。如果仔细查看所提供的链接,您将看到标题使用一种格式,而正文使用另一种格式。
var count = $('li[data-target^="#step"]').length;
var count = $("li[data-target^='#step']").length;