如何使用jQuery移除父级.row节点内元素的hide类
你原有代码的问题在于误用了each()方法:each()用于遍历已选中的元素集合,不能直接传入选择器筛选当前元素的后代节点,你需要替换为find()方法完成后代筛选。
修正后的代码如下:
$('a[data-action="show-more"]').click(function(e) { e.preventDefault(); $(this).closest('.row').find('.hide').removeClass('hide'); });
这段代码的执行逻辑完全匹配需求:
- 点击链接时首先阻止默认跳转行为
- 从当前点击的链接出发向上查找最近的父级
.row节点,限定操作范围 - 仅在这个
.row节点的所有后代元素中查找带.hide类的元素并移除该类 - 不会影响页面中其他同结构的
.row块
内容的提问来源于stack exchange,提问作者Maman
相关产品推荐
相关产品推荐

