jquery - 这个切换功能有什么问题吗?

标签 jquery html toggle image

我有一个简单的img标签 <p>标签,如果我单击 img 或 <p>标记内部div应该是visible再次如果我点击它,它应该 hide该div。

我是第一次让它工作,但是如果我单击 img<P>图像不发生变化的第二个标签。

我不想要 <p> 的背景图片应该改变我需要它作为 img 标签。

<script type="text/javascript">
    jQuery(document).ready(function () {
        jQuery(".content").hide();
        //toggle the componenet with class msg_body
        jQuery(".heading").click(function () {
            var $this = $(this),
            $contentArea = $this.next('.content');

            if (!$contentArea.hasClass('active')) {
                $this.find('img').attr("src", "img/Minus.png");
                $(".content.active").slideToggle(500).removeClass('active');
                $contentArea.slideToggle(500).addClass("active");
            }
            else if ($contentArea.hasClass('active')) {
                $this.find('img').attr("src", "img/Plus.png");
                $(".content.active").slideToggle(500).addClass('active');
            }
        });
    });
</script>

这就是我展示它的方式:

<div class="layer1">
    <p class="heading"><img src="img/Plus.png" alt="" style="margin:0 5px 0 0;" /></p>
    <div class="content"></div>
    <p class="heading"><img src="img/Plus.png" alt="" style="margin:0 5px 0 0;" /></p>
    <div class="content"></div>
    <p class="heading"><img src="img/Plus.png" alt="" style="margin:0 5px 0 0;" /></p>
    <div class="content"></div>
    <p class="heading"><img src="img/Plus.png" alt="" style="margin:0 5px 0 0;" /></p>
    <div class="content"></div>
</div>

这是我的 fiddle

最佳答案

if block 中有以下内容:

$contentArea.slideToggle(500).addClass("active");

你不应该有相反的情况吗:

$contentArea.slideToggle(500).removeClass("active");

在 else block 中?

关于jquery - 这个切换功能有什么问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8836744/

相关文章:

javascript - Chrome 扩展 - 在底层页面上覆盖 iframe 的内容

jquery - 如何使用 Greasemonkey 和 Jquery 隐藏具有特定类的 HTML 元素?

javascript - 从滚动条中的 div 获取 sibling 对

javascript - 带有 materializecss 的动态菜单

javascript - 来自跨域的图像在 HTML 中显示正常,但 ajax 调用同一图像从浏览器控制台失败

javascript - jQuery 不会切换 css 属性?

css - Bootstrap 3行切换不与行对齐

javascript - 无论如何有一个for循环等到一个间隔被清除

javascript - Jquery,无法删除克隆的元素

javascript - 如何在点击时在真/假之间切换