在下面的“dev 函数”中,我尝试将字符串转换为小写,以在“html”变量中的字符串与 span 标记的内容之间执行小写与小写的比较。
当尝试将跨度转换为小写时,我一定在 dev 函数上做错了什么,因为突出显示类似乎没有附加...
var html = jQuery('#content').html().toLowerCase();
//existing function works when the span is preset to lowercase
jQuery(".my_kw").find("span").filter(function() {
return html.indexOf(jQuery(this).html()) != -1;
}).each(function() {
jQuery(this).addClass('highlight');
});
}
//dev function. Trying to allow for spans to be mixed case, and force to lowercase only for comparison
jQuery(".my_kw").find("span").filter(function() {
var kw = jQuery(this).toLowerCase();
return html.indexOf(kw.html()) != -1;
}).each(function() {
jQuery(this).addClass('highlight');
});
}
最佳答案
我认为您错过了对 .html()
的调用
考虑您的第一次通话:
return html.indexOf(jQuery(this).html()) != -1;
还有你的第二个:
var kw = jQuery(this).toLowerCase();
也就是说,您可能想要:
var kw = jQuery(this).html().toLowerCase();
return html.indexOf(kw) != -1;
关于jquery - 与 jQuery 比较不区分大小写?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6808597/