尝试删除 jquery 中的类失败

Attempt to removeClass in jquery fails

我正在尝试从此 HTML 代码中删除 类 div1intro

片段示例:

$(function() {
  $('div').on('click', function() {
    alert("Hello");
    $("div").removeClass("div1");
    $("p").removeClass("intro");
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="div1">div 1</div>
<div class="div2">div 2</div>
<div class="div3">div 3</div>
<div class="div4">div 4</div>
<p class="intro">This is a paragraph.</p>
<p class="intro">This is another paragraph.</p>

现在,当我单击 div 时,我会收到问候提示,但 div1 和简介 类 不会被删除。关于我在这里可能遗漏的内容有什么建议吗?

更新: 我应该一直使用 remove 而不是 removeClass。 Fiddle sample.

看来问题是 remove and removeClass 之间的误会。 OP 想从 DOM 中删除一个元素,因此应该使用 remove(),而不是想使用 removeClass()

删除 class

jsfiddle

您正在选择 p 元素并尝试删除 div 上的 div1div2 类:

$(function() {
  $('div').on('click', function() {
    
    $("div").removeClass(function (index, className) {
      return (className.match (/div[0-9]/g) || []).join(' ');
    });
    $("p").removeClass("intro");
  });
});
.div1, .div2, .div3, .div4 {
    border: 1px solid red;
  }

.intro {
  color: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="div1">div 1</div>
<div class="div2">div 2</div>
<div class="div3">div 3</div>
<div class="div4">div 4</div>
<p class="intro">This is a paragraph.</p>
<p class="intro">This is another paragraph.</p>

如果您要从 DOM 中删除元素,运行 脚本如下:

$('div').on('click',function(){
    alert("Hello");
    $(".div1").remove();
    $(".intro").remove();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="div1">div 1</div>
<div class="div2">div 2</div>
<div class="div3">div 3</div>
<div class="div4">div 4</div>
<p class="intro">This is a paragraph.</p>
<p class="intro">This is another paragraph.</p>

removeClass('intro1') 将从对象中删除 intro class 属性。 remove() 是将从 DOM 本身中删除它的函数。