【问题标题】:Change the background of selected LI using JQuery使用 JQuery 更改所选 LI 的背景
【发布时间】:2012-03-10 12:33:53
【问题描述】:

我想更改我点击的 LI Tag 的背景颜色....
但问题是,代码(JQuery 和 LI 列表)在 masterpage(Admin.master) 上, 我在 Admin.Master 页面上编写了以下代码...但它似乎不起作用.....

    <div id="main_menu">
            <ul>
                <li><a href="dashboard.aspx">Dashboard</a> </li>
                <li><a href="Contacts.aspx">Contacts</a></li>
                <li><a href="MeetingA.aspx">Schedule Meeting</a></li>
                <li><a href="Tasks.aspx">Task</a></li>
                <li><a href="Calendar.aspx">Calendar</a></li>
                <li><a href="Documents.aspx">Documents</a></li>                    
            </ul>
        </div>

我的 JQuery 代码是:

 $(document).ready(function(){
            $("li").click(function(){
               $('li').removeClass('selected');
               $(this).addClass('selected');
              });
            });

风格:

  <style type="text/css">
    li { color: #000; } li.selected { color: #FF0000; } 
  </style> 

所有代码都在 MasterPage 上,但没有得到解决方案..

谢谢, 维沙尔

【问题讨论】:

  • - 我的 JQuery 代码是:$(document).ready(function(){ $("li").click(function(){$('li').removeClass('selected' ); $(this).addClass('selected'); }); }); - 样式:
  • 编辑您的问题并将代码放在那里。为什么 html 和 jQ 在哪里很重要?
  • 好吧,我不确定,为什么它不起作用.....在母版页上!!!

标签: jquery asp.net menu html-lists master-pages


【解决方案1】:

为什么不使用.toggle()

我已经快速创建了jsFiddle here

从现在开始,您可以使用一些条件语句来做一些创造性的事情。 希望对您有所帮助。

【讨论】:

    【解决方案2】:

    我想改变我点击的&lt;li&gt;标签的背景颜色...

    但您尝试更改字体color,而不是background-color。所以我的猜测是&lt;a&gt; 已经定义了一种颜色,它会覆盖&lt;li&gt; 的颜色。
    尝试使用 background-color 并检查 &lt;a&gt; 是否没有覆盖该样式。

    li.selected { background-color: #FF0000; }
    

    编辑:就像 sngregory 所说,您可能想要拦截并取消 &lt;a&gt; 的默认行为。所以你可以像这样重写你的代码:

    $('a').click(function(e){
        e.preventDefault();
        $('li').removeClass('selected');
        $(this).parent().addClass('selected');
    });
    

    【讨论】:

    • 您还需要考虑您单击的 li 标签包含超链接这一事实。单击它们将重新加载页面,除非您在其他代码中拦截单击...
    • 哦.. 抱歉,我实际上在这里添加了错误的样式...在我的样式中,我使用了 li.selected { background-color: #FF0000; }
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-07
    • 1970-01-01
    • 1970-01-01
    • 2013-03-05
    • 2015-11-01
    • 2013-08-30
    相关资源
    最近更新 更多