0

好的,这是我的导航设置

<div id="headerMenu">
            <ul>  
                <li style="width:147px"><a href="/?page_id=92" class="menuHov"><span>ABOUT<br/>ABOUT</span></a></li>
                <li style="width:186px"><a href="/?page_id=64" class="menuHov"><span>STOCKISTS<br/>STOCKISTS</span></a></li>
                <li style="width:146px"><a href="/?page_id=96" class="menuHov"><span>PRESS<br/>PRESS</span></a></li>
                <li style="width:128px"><a href="/?category_name=blogs" class="menuHov"><span>BLOG<br/>BLOG</span></a></li>
                <li style="width:70px"><a href="/?page_id=89 " class="menuHov"><span>CONTACT<br/>CONTACT</span></a></li>
            </ul>

我需要一个 jquery 脚本来识别 page_id 变量和 href,如果它们相同,请更改颜色...如果您需要更多信息,请告诉我...

这是我到目前为止所尝试的。

 $(document).ready(function() {
    $('a.menuHov[href$=' + window.location.pathname + ']').css('color', '#fae349');
});

但这会改变一切,因为我猜它不会将 href 识别为路径名

4

3 回答 3

0

我认为问题出在正斜杠/?在网址中。试试这个它应该工作:

$(document).ready(function() {     
   $('a.menuHov[href$="' + window.location.pathname + '"]').css('color', '#fae349'); 
}); 

工作示例@jsfiddle:http: //jsfiddle.net/CeZCY/8/

于 2011-04-01T20:43:18.640 回答
0
$(document).ready(function() {
     var link = window.location;
     var t_arr = new Array();
     t_arr = link.split('/');
     $("a.menuHov[href$='"+t_arr[1]+"']").css('color', '#fae349');     
});

没事吧?

于 2011-04-01T20:48:24.087 回答
0
$(function(){
    var page_id = getParameterByName("page_id");
    $("a.menuHov[href$=" + page_id + "]").css('color', '#fae349');
})

从此处包含查询字符串解析器

function getParameterByName( name )
{
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return decodeURIComponent(results[1].replace(/\+/g, " "));
}
于 2011-04-01T20:55:07.133 回答