点击.showcomments元素后,如何移除所有同类元素的该类?代码修改咨询
解决方法:点击后移除所有
.showcomments元素的类 很简单,你只需要调整JavaScript里移除类的那一行代码,把针对单个点击元素的操作改成选中所有带showcomments类的元素,统一移除这个类就行。
原来的代码里,你是针对当前点击的单个element移除类:
$(element).removeClass('showcomments');
把这行改成直接通过类选择器选中所有目标元素:
$('.showcomments').removeClass('showcomments');
修改后的完整JavaScript代码如下:
$( document ).on( "click", ".showcomments", function() { alert("ok"); var element = $(this); var id = element.attr("data-postid"); $('.showcomments').removeClass('showcomments'); // 现在会移除所有带该类的元素的类 });
你的HTML代码不需要做任何修改,保持原有结构即可:
<a href="javascript:;" class="showcomments" data-postid="'1'">1</a> <a href="javascript:;" class="showcomments" data-postid="'2'">2</a> <a href="javascript:;" class="showcomments" data-postid="'3'">3</a>...
这样修改后,不管点击哪一个带showcomments类的链接,页面上所有拥有这个类的元素都会被移除该类,彻底避免重复触发点击事件。
内容的提问来源于stack exchange,提问作者RGS
相关产品推荐
相关产品推荐

