无法在点击时更改链接的颜色

时间:2013-03-07 17:22:56

标签: jquery css hover

我在页面右侧有菜单,菜单中的所有链接都是橙色。当我将任何链接悬停时,它会变为黑色。但我想要的是,直到我点击任何其他链接它应该保持活动的黑色,以便每个人都知道打开的页面属于该链接。 这可能是一个愚蠢的问题,但我无法做到。提前谢谢。

以下是代码:

JavaScript函数:

@section JavaScript{
<script type="text/javascript">
    $('#allapps a').click(function () {
        $('#allapps a').removeClass('selected'); // remove selected from any other item first
        (this).addClass('selected'); //add selected to the one just clicked.
    });
 </script>
}

链接:

<a id="allapps" class="allapps" href="@Url.Action("CategoryType", "Marketplace", new { @id = 1 })"><h3 class="allapps grid_2 alpha">Legal </h3><p class="grid_1 omega calculate" > @ViewBag.legal</p><br /><br /></a> 

的CSS:

.allapps
{
font-family: Arial;
font-size: 12px;
color:#C55000;
padding-left:20px;
font-weight:bold;
}

a.allapps :link {
   color: Black;
}

a.allapps :visited {
 color:Black;}

a.allapps :hover {
 color:Black;}

a.allapps :active {
  color:Black; }

3 个答案:

答案 0 :(得分:1)

你错过了$或jQuery

更改

(this).addClass('selected');

$(this).addClass('selected');

答案 1 :(得分:0)

在你的JQuery中 为什么同时使用ID名称和标签名称??

$('#allapps a').click(function () {

你可以尝试以下......可能会帮助你......

$('#allapps').click(function () {
        $('#allapps').removeClass('selected'); // remove selected from any other item first
        $(this).addClass('selected'); //add selected to the one just clicked.
    });

此外,我在CSS中找不到.selected类......

尝试添加

.selected{
 color:Black;}

答案 2 :(得分:0)

试试这个:

  $(function(){
     var url = window.location.href;
     var page = url.substr(url.lastIndexOf('/')+1);
     $('a[href$="'+page+'"]').addClass('selected');

     $('#allapps a').click(function () {
        $('#allapps a').removeClass('selected');
        $(this).addClass('selected');
     });
  });

您希望to highlight the link看似when clicked on it page get refreshedapplied class gets removed.