通过查询字符串突出显示菜单忽略区分大小写

时间:2013-05-15 09:08:44

标签: jquery html menu highlight case-sensitive

我使用jquery来突出显示我的菜单。这是我的HTML看起来像

<div id="menu">
    <div class="item"><a href="?product=abc">ABC</a></div>
    <div class="item"><a href="?product=XYZ">XYZ</a></div>
    <div class="item"><a href="?product=Test">Test</a></div>
</div>

假设我获得了当前查询字符串的值:urlParams [“product”](通过在here中使用Andy E的代码)

$(document).ready(function() {
        $("#menu").find("a[href='?product=" + urlParams["product"] + "']").addClass("selected");
    });

只有在查询字符串与href完全相同时才有效。如何使其不区分大小写?非常感谢你

1 个答案:

答案 0 :(得分:1)

您可以使用.toLowerCase()方法:

$("#menu").find("a").filter(function(){
    return this.href.toLowerCase().indexOf(urlParams["product"].toLowerCase()) > -1;
}).addClass("selected");

或者:

var query = urlParams["product"].toLowerCase();

$("#menu a").filter(function(){
   return this.href.split('=')[1].toLowerCase() === query;
}).addClass("selected");

http://jsfiddle.net/RuYkn/