不区分大小写与jQuery比较?

Sco*_*t B 1 jquery case-insensitive

在下面的"dev函数"中,我正在尝试将字符串转换为小写,以便在"html"变量中的字符串与span标记的内容之间执行小写到小写的比较.

尝试将span转换为小写时,我必须在dev函数上做错了,因为highlight类似乎没有附加...

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');
        });
    }
Run Code Online (Sandbox Code Playgroud)

And*_*ong 7

我想你错过了一个电话 .html()

考虑你的第一个电话:

return html.indexOf(jQuery(this).html()) != -1;
Run Code Online (Sandbox Code Playgroud)

而你的第二个:

var kw = jQuery(this).toLowerCase();
Run Code Online (Sandbox Code Playgroud)

也就是说,你可能想要:

var kw = jQuery(this).html().toLowerCase();
return html.indexOf(kw) != -1;
Run Code Online (Sandbox Code Playgroud)