Jquery只能在切换时单击一次

时间:2013-08-28 09:27:48

标签: javascript jquery css

我使用以下脚本显示不同的背景,具体取决于div的状态。

当它未展开时,它会显示“加号(+)”符号,而当展开时,它没有背景图像(不显示任何内容)。

问题是只能工作一次,我不知道为什么。

以下是代码:

编辑(添加HTML)!

HTML:

<body>
    <section>
        <div class="wrapper wf">
            <ul id="Parks" class="just">
<!--------------- PRODUCT -->
                <li class="mix" href="#therapy_vital" >
                <div class="meta name">
                        <div class="img_wrapper">
                            <img src="images/spa/masaje/.jpg" onload="imgLoaded(this)"/>
                        </div>
                        <div class="titles">
                            <h2>TITLE</h2>
                        </div>
                    </div>
                    <!-- Expand -->
                    <div href="#therapy_vital" class="nav-toggle"></div>
                    <div id="therapy_vital" style="display:none">
                <article class="ac-small">
                 SUBCONTENT<br><br><br><br><br><br><br><br><br><br><br><br>
                 </article>
                </div>
                </li> 
<!--------------- PRODUCT -->
                <li class="mix" href="#therapy_natur" >
                <div class="meta name">
                        <div class="img_wrapper">
                            <img src="images/spa/masaje/.jpg" onload="imgLoaded(this)"/>
                        </div>
                        <div class="titles">
                            <h2>TITLE</h2>
                        </div>
                    </div>
                    <!-- Expand -->
                    <div href="#therapy_natur" class="nav-toggle"></div>
                    <div id="therapy_natur" style="display:none">
                <article class="ac-small">
                 SUBCONTENT<br><br><br><br><br><br><br><br><br><br><br><br>
                 </article>
                </div>
                            </li> 
</ul>
</div>                      
        </section>
    </body>

JS:

$(document).ready(function() {
    $('.meta').click(function() {
        $(this).css('background', 'none');
    });
    $('.mix').click(function() {
        var collapse_content_selector = $(this).attr('href');
        var toggle = $(this);
        $('.meta').click(function() {
            $(this).css('background', 'url(images/arrow_down.png) no-repeat scroll 95% 97% transparent');
        });
        $(collapse_content_selector).toggle(function() {});
    });
});

(.mix值使Div扩展,.meta类切换到不同的背景。)

有任何线索吗?

EDIT2(实例)

http://anubisfiles.com/test/test.html

(由于我对jsFiddle并不熟悉,我更愿意向您展示它在网站上托管的内容。)

谢谢!

2 个答案:

答案 0 :(得分:0)

使用函数来绑定事件,

$('element').on('click', function() {

});

答案 1 :(得分:0)

$('.mix').click(function() {
        var collapse_content_selector = $(this).attr('href');
        var toggle = $(this);

        $(this).find('.meta').css('background', 'url(images/arrow_down.png) no-repeat scroll 95% 97% transparent');
        $(collapse_content_selector).toggle(function() {});
    });

试试这个