javascript - jQuery 显示和隐藏事件问题

标签 javascript php jquery wordpress plugins

我有一些具有以下结构的 html 元素。

<input class="test" />
<div class="test"></div>

<input class="test" />
<div class="test"></div>

<input class="test" />
<div class="test"></div>

<input class="test" />
<div class="test"></div>

单击任何输入都应显示其相邻的 <div>

但它确实会触发所有 div

我想让当我单击任何输入字段时,仅显示其相邻的 <div>将设置为显示而所有其他隐藏。

到目前为止我拥有的 jQuery 代码如下:

<script type="text/javascript">
    jQuery(document).ready(function($) {

        $('body').on('click', '.test', function () {
                $(this).fadeIn('medium').siblings("div").hide();
        });

    });     

</script>

最佳答案

问题是对 .siblings('div') 的调用将应用于每个 div,因为您提供的 HTML 中的每个元素都位于同一级别。

如果您不想更改此结构,请使用 .next()

例如:

<script type="text/javascript">
jQuery(document).ready(function($) {

    $('body').on('click', '.test', function () {
            $(this).fadeIn('medium').next("div").hide();
    });

});     

</script>

关于javascript - jQuery 显示和隐藏事件问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27687797/

相关文章:

javascript - 意外的 token ,ES6数组

Javascript表达式短缺: value?值:'100'

javascript - 当文本框内容发生变化时自动提交表单

php - MySQL 搜索一个

jquery - jquery缩放效果后如何防止图像跳转

javascript - 如何解构 obj[arr[0]] = arr[1]

javascript - 如何使用 redux\redux-form 初始化独立的 Radio Button Group 组件检查属性状态

php - 如何以数组形式检索包含括号 {} 之间的数据的 MySQL 数据库字段

javascript - jQuery 插件覆盖按键事件

jquery - 更改页面滚动上的事件菜单项?