jquery - 选择下一个最接近的类(class)

标签 jquery

我想制作一个简单的方法来在用户单击单选按钮时隐藏/显示内容。我不想一遍又一遍地使用 ID,而是想使用类创建一个更通用的选择器,这样我就可以在整个网站中重新应用它。

我认为我没有离开父 div (.radio-show) 来查找 .next .radio-show-content?

$('.radio-show input:radio').click(function() {
        $(this).closest('div').next().find('.radio-show-content').fadeToggle(250).toggleClass('hide'); 
});


<div class="radio-show" > 
<label class="radio span1">
    <input type="radio" name="project" value="option1" checked>
    Yes
</label>
<label class="radio span1">
    <input type="radio" name="project" value="option2">
    No
</label>
</div>

<hr />
<div class="radio-show-content"><!-- yes -->
    Show this if Yes
</div>
<div class="radio-show-content hide"><!-- no-->
    Show this if No
</div>

最佳答案

.next正在获取<hr> 。实际上,没有必要遍历 DOM 树。您可以只使用:

$(".radio-show-content").fadeToggle(250).toggleClass('hide')

但是,这可能不会达到您想要的效果,因为它没有选择特定的 .radio-show-content 。您可以基于单选按钮索引进行链接(使用 .index 获取并使用 -show-content 获取 .eq ),或者仅使用 CSS 过渡 .hide 。并一致地切换它。

关于jquery - 选择下一个最接近的类(class),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14464696/

相关文章:

jquery - 如何修复 bootstrap 下拉菜单隐藏的溢出?

javascript - JQuery animate 总是删除显示 :none and adds display:block to inline css

javascript - jQuery 按键左/右导航

javascript - Angular 自定义指令不适用于外部 javascript 插件

javascript - 将文本添加到输入字段(并始终替换当前文本)

javascript - 如何使用 jquery 滚动到模式中的元素?

javascript - Avada wordpress 网站的简单 CSS 或 JavaScript 加载屏幕,同时加载一个大型视频文件,该文件在页面加载完成后消失

php - 自动刷新DIV时,是否可以不重新加载DIV内的Iframe?

javascript - 如何在数据表的每一行上添加按钮?

c# - 基于下拉菜单上的选择的 MVC3 锁定文本框