0

如果点击了这个,我想将一个类分配给一个href标签,换句话说,如果地址栏中有一个地址,则将一个类分配给这个标签..

我的css中有这种样式..

ul#menu li a {
padding: 10px 20px;
font-weight: bold;
text-decoration: none;
line-height: 2.8em;
color: #465c71;
}

ul#menu li a.selected {
padding: 10px 20px;
font-weight: bold;
text-decoration: none;
line-height: 2.8em;
color: #FFFFFF;
}

哪里只改变字体颜色..

我的 mvc3 项目的布局页面中的这个 jquery 脚本..

我有这个功能。。

<script type="text/javascript">
  $(function () {
      var pgurl = window.location.href.substr(window.location.href.lastIndexOf("/") + 1);
      $("#menu li a").each(function () {
      var addr = $(this).attr("href").lastIndexOf("/") + 1;
      if (addr == pgurl)
          $(this).addClass("selected");
  })
 });
 </script>

其中 pgurl 是粗体值http://local.host:81/Home/ Services(当然,因为我使用并在另一个 jquery 函数中工作)

我有这样的 aa href 链接..

<li><a href="@Url.Action("Services", "Home")">@MvcWebRole1.Resources.Shared.Layout.Services</a></li>

而这上面生成的链接是这样的..

<a href="/Home/Services">Services</a>

如果第一个变量与我的页面相同,我想在此标签中添加一个类。我通过 firebug 或类似方法(手动添加类)按预期工作。

最后,两个变量应该具有粗体值(服务),但没有在标记处添加类,我使用 Visual Studio 2010 并且我无法测试这个值,我不能在其上放置任何断点来查看它们的值.. 并且作为上面评论过,我有另一个类似的功能,可以完美地与另一个列表的标签配合使用。

有人能帮我吗?

谢谢。

4

1 回答 1

1
var addr = $(this).attr("href").lastIndexOf("/") + 1;

上面将number+ 1 分配给addr. 然后您继续测试此数字是否等于字符串,因此除非您的操作是数字(不确定是否可以),否则它将始终失败。

也许您也打算从链接中获取子字符串

 var addr = $(this).attr("href").substr($(this).attr("href").lastIndexOf("/") + 1);
于 2012-05-17T09:50:27.517 回答