我有一些与jQuery 1.7.2一起运行的代码
尝试使用此选择器查找时遇到错误
var x = "span:contains(\"C) Foo (Bar)\")";
$('body').find(x)
https://jsfiddle.net/elewinso/dfbn82wo/7/
这个问题在JQuery 1.8及更高版本中已得到解决,但是由于我无法切换jQuery,所以我希望找到一个补丁。
最佳答案
问题在于您的选择器使jQuery的解析器感到困惑,因为它包含方括号。它认为您要匹配的)
是其contains:
内容过滤器的右括号。
您可以通过使用filter()
来解决此问题。
$('span').filter(function() {
return $(this).text().indexOf('"C) Foo (Bar)"') != -1;
});