jquery - 显示/隐藏 jQuery 脚本无法正确切换元素

标签 jquery

我需要 jQuery 脚本:

  1. 默认情况下仅显示一个事件 div,其他 div 将隐藏
  2. 此时只有一个处于事件状态(如果单击新隐藏的 div -> 它会打开,当前打开的 div 将关闭)

我有一些代码和演示:

HTML

<div class="toggle">Content</div>
<div  class="hidden hide">Content</div>
<div class="toggle">Content</div>
<div  class="hidden show">Content</div>

CSS

.toggle {width:398px; height:48px; cursor: pointer; border: 1px solid #000}
.hidden {width:300px; height:75px; background-color:#333333; margin-left:50px; text-indent:25px;}

.hide {display:none;}
.show {display:block;}

JavaScript

$(document).ready(function() {
    $(".toggle").click(function() {
       $('.active').not(this).toggleClass('active').next('.hidden').slideToggle(300);
       $(this).toggleClass('active').next().slideToggle("fast");
    });
});

http://jsfiddle.net/kolxoznik1/C7W2D/

问题是,当打开新的 div 时,它不会正确关闭以前打开的 div。

最佳答案

使用此代码

$(document).ready(function() {
    $(".toggle").click(function() {
         $(".hidden").hide(); //to hide all
        $(this).next().show(); //to show the one you clicked on

    });
});

在这里查看它的工作http://jsfiddle.net/C7W2D/4/

关于jquery - 显示/隐藏 jQuery 脚本无法正确切换元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7128432/

相关文章:

javascript - 不完全可见时隐藏 <li> 元素

jquery - 查看文件中的错误消息

javascript - 如何用jquery设置矩形的高度和宽度

javascript - 为什么jQuery延迟不会导致闪烁 Action

javascript - 如何针对 JSP servlet 发出 AJAX 请求

jQuery:添加元素直到达到特定高度

jquery - 使用 fadeIN 函数限制链接标签以获得平滑滚动效果

javascript - 单击按钮后刷新并重定向页面

jquery - 如何在有滚动条的屏幕中央显示 loading.gif

javascript - 在 D3.js 中,有没有办法绑定(bind) x 和 y 方向上的滚动事件来平移 svg?