【问题标题】:Why won't jQuery remove my class?为什么 jQuery 不会删除我的课程?
【发布时间】:2014-10-08 19:34:32
【问题描述】:

小提琴:http://jsfiddle.net/xrjsq6Ls/

我似乎无法让 jQuery 删除我指定的类,但是 fadeOut() 将淡出预期的 DOM 元素。我做错了什么?

HTML:

<div class="comment_section">
    <div class="comment_outter user-marked-offensive">
        <div class="comment_arrows"></div>
        <div class="comment_inner">
            <div class="actions"> 
                <a class="offensive simulate-link">Mark Comment As Offensive</a>
            </div>
        </div>
    </div>
</div>

jQuery:

var selector = ".user-marked-offensive > .comment_inner > .actions > .offensive";

$('.comment_section').on("mouseover", selector, function () {
    $(this).closest('.comment_outter').removeClass('.user-marked-offensive');
    //$(this).closest('.comment_outter').fadeOut();
});

【问题讨论】:

  • 尝试删除'.'在 removeClass('user-marked-offensive')

标签: javascript jquery css validation jquery-selectors


【解决方案1】:

removeClass() 将类名作为参数而不是类选择器

$(this).closest('.comment_outter').removeClass('user-marked-offensive');

演示:Fiddle

【讨论】:

    【解决方案2】:

    使用 removeClass 你不需要在类名前写点;)

    $(this).closest('.comment_outter').removeClass('user-marked-offensive');
    

    【讨论】:

      【解决方案3】:

      您应该在removeClass 方法中删除.

      $(this).closest('.comment_outter').removeClass('.user-marked-offensive');
      

      $(this).closest('.comment_outter').removeClass('user-marked-offensive');
      

      【讨论】:

        猜你喜欢
        • 2023-01-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-02-27
        • 1970-01-01
        • 1970-01-01
        • 2012-03-13
        • 2011-10-11
        相关资源
        最近更新 更多