【问题标题】:jquery - how to add/remove class on slideToggle?jquery - 如何在 slideToggle 上添加/删除类?
【发布时间】:2011-05-03 05:07:23
【问题描述】:

我希望每次 div 扩展时,在扩展完成后添加类 'selecionado'。 收缩完成后(滑动部分)我想删除这个类。

我可以在这里帮忙吗?

$('#btCategoriaA').click(function()
{
  $('#listaCategoriaA').slideToggle('slow', function() {
   $('#btCategoriaA').addClass('selecionado');
  });
});

提前致谢, 内存

【问题讨论】:

    标签: jquery slide


    【解决方案1】:

    您可以根据动画后的元素.is() :visible 使用.toggleClass() 切换类,如下所示:

    $('#btCategoriaA').click(function() {
      $('#listaCategoriaA').slideToggle('slow', function() {
        $('#btCategoriaA').toggleClass('selecionado', $(this).is(':visible'));
      });
    });
    

    【讨论】:

    • 你真的很喜欢 js,不是吗? :P 非常感谢。 :D
    • 还有一件事,我正在使用像 a:hover 这样的 css 状态来执行此操作。问题是,一旦用户点击,我需要禁用悬停,否则效果会很奇怪,因为一旦点击,状态应该会改变,但由于它是悬停的,它不会。 :s 有没有办法禁用 a:hover 一旦用户点击什么的?
    • @MEM - 您可以将:hover 设为a.Off:hover 并在添加selecionado 时删除该Off 类。
    • @Nick Craver:所以,a.Off:hover 不会应用悬停效果。一旦我们删除了 Off 部分,就会应用悬停,这是诀窍吗?
    猜你喜欢
    • 2013-05-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多