2

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"] (ここで Andy E のコードを使用)

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

クエリ文字列が href とまったく同じ場合にのみ機能します。大文字と小文字を区別しないようにするにはどうすればよいですか? どうもありがとうございました

4

1 に答える 1

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/

于 2013-05-15T09:16:18.783 に答える