单击li时,Jquery addclass不起作用

时间:2011-07-15 06:33:17

标签: jquery css

我有如下的菜单结构

<ul class="menu_bg" id="menu-main-menu">
  <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-653" id="menu-item-653"><a href="http://apptivowp.apptivo.com/" title="Home">Home</a></li>

  <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-650" id="menu-item-650"><a href="http://apptivowp.apptivo.com/artists/" title="Artists">Artists</a></li>

  <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-651" id="menu-item-651"><a href="http://apptivowp.apptivo.com/category/show-dates" title="Show dates">Show dates</a></li>

  <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-649" id="menu-item-649"><a href="http://apptivowp.apptivo.com/gear/" title="Gear">Gear</a></li>
  <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-563" id="menu-item-563"><a href="http://apptivowp.apptivo.com/category/news" title="News">News</a></li>
</ul>

我在jquery下面用来设置一个类来点击li。

<script type="text/javascript">
jQuery('ul.menu_bg li a').click(function()
{

   jQuery(this)('ul.menu_bg li').addClass('mymenu');
});
</script>

但是它不起作用..当我点击那个李时,我的名字mymenu没有说明。

问题是什么?..

由于 拉维

4 个答案:

答案 0 :(得分:3)

您无需重新选择选择器,只需:

jQuery(this).addClass('mymenu');

会将类添加到a,因为您要将其添加到li,只需先遍历树:

$(this).closest('li').addClass('mymenu');

答案 1 :(得分:1)

尝试:

$(document).ready(function(){
    jQuery('#menu-main-menu li a').click(function() {

       $(this).parent().addClass('mymenu');
    });
});

答案 2 :(得分:0)

jQuery(this)('ul.menu_bg li')。addClass('mymenu');

以上一行是错误的。

使用jQuery(this).addClass('mymenu');

答案 3 :(得分:0)

正如cwolves所说,你不需要重新选择该项目。使用jQuery('ul.menu_bg li).click(...),您已经在Click事件列表中选择了 li 标记。

因此,您可以直接使用该元素:jQuery(this).doWhatYouWant