2012-04-24 64 views
0

我正在制作一个菜单,我想将class =“selected”添加到活动的菜单项中。我有location.pathname问题时,URL是这样的: - http://www.google.com/sub-folder/adrov48.phpjQuery和活动菜单项 - 什么是最好的?

所以basicaly只能当URL很简单那样: - http://www.google.com/adrov50.php

我知道有很多similair问题,但如果你拿看看下面我用一个“新”的方法,但它不是真正的工作代码,这就是你们的:)

Javascript代码跳:

  var path = location.pathname; 

      $("a[href='" + [path] + "']").parents("li").each(function() { 
        $(this).addClass("selected"); 
      }); 

任何想法如何使用jQuery进行此项工作。

如果有人认为我的方法不好或不理想,请告诉我为什么并发布或链接我的解决方案。

在此先感谢!

回答

1

你为什么不这样做:

// Check complete URL 
var path = location.href; 
$("#navID li a").each(function() { 
    // Check if there is a match between the URL and the navigation link  
    if(path.match($(this).attr("href")) $(this).parent().addClass("selected"); 
}); 
+0

因为在我的hrefs我没有完整的网址:S Basicaly => href =“http://www.google.com/sub-folder/adrov48.php”不能匹配href =“adrov48。 php“... – ProDraz 2012-04-24 14:19:44

+0

你实际上在这里匹配”adrov48.php“到”google.com/sub-folder/adrov48.php“.. – kayen 2012-04-24 14:22:27

+0

它只是不工作,这是我测试过的代码=> http://jsfiddle.net/umhdy/ – ProDraz 2012-04-24 14:26:35

1

结合location.pathname和location.search创建网址片段

+0

也许演示?谢谢! :) – ProDraz 2012-04-24 14:09:33