我有一些代码有'。'字符在CSS类名,因此逃生时需要使用选择$('.classNameWithDot\\.inIt')
jquery:文字字符串选择符与变量选择符的区别
我遇到了一个有趣的错误,由此,如果你在一个变量选择存储也不会如预期,除非你改变你如何共同寻找元素从两个反斜杠中将点字符转义。
//will not work
//var selector = '.classNameWithDot\\.inIt';
//works in a variable, with one backslash as opposed to the required double backslash for the literal
var selector = '.classNameWithDot\.inIt';
var element = $(selector);
我的问题是为什么会出现这种情况?为什么我们必须在文字选择器中使用双反斜线,而在变量选择器中使用单斜线?
'” .classNameWithDot \ .inIt''结果,所以我怀疑你的观察是否正确。无论您使用字符串文字还是变量都无关紧要。除非你可以用http://jsfiddle.net/(或类似的东西)来重现这种行为,否则我认为你的实际问题在别的地方。 – 2014-08-28 22:14:06
这个小提琴与您的描述不符:http://jsfiddle.net/jtbowden/zf4daLxt/ – 2014-08-28 22:25:30
类名称不以'点'开头。例如:'someName.restOfName'。 @FelixKling – nelsonomuto 2014-09-28 22:36:46