Как сделать так, чтобы скользящий элемент «Появился откуда-то» оставался открытым и ждал, пока снова не щелкнет, чтобы закрыть? JQuery - PullRequest
0 голосов
/ 21 февраля 2011

После нажатия на кнопку div появляется еще один div, скользящий по экрану с информацией, но затем автоматически закрывающийся. Я хочу, чтобы этот слайд div оставался открытым, пока я снова не нажму на кнопку div, чтобы закрыть его.

Код jQuery ниже:

jQuery(document).ready(doContactInfoPanel);

function doContactInfoPanel() {
    jQuery('.info-btn-slide').click(function() {
        jQuery('#info-slide-panel').slideToggle('slow');
    });
}

Итак, мой вопрос: как я могу держать #info-slide-panel открытым, пока я снова не нажму .info-btn-slide, чтобы закрыть его?


jQuery(document).ready(doAddHtml);

function doAddHtml() {
    jQuery('.slide').after("<div id='info-slide-panel'><p>Work Tel :  <br><br></p><br><p>Cell :  <br><br></p></div>");
    jQuery('#info-slide-panel').after("<div class='info-slide'><a href='#'  class='info-btn-slide'></a></div>");
}

Ответы [ 2 ]

0 голосов
/ 21 февраля 2011

Вы должны регистрировать событие click дважды, и с момента его переключения оно просто открывается и закрывается. Можете ли вы взглянуть на источник и посмотреть, загружаете ли вы этот фрагмент JavaScript в 2 местах?

0 голосов
/ 21 февраля 2011

У вас это работает?

Javascript

$('.slide').click(
    function(){
        $(this).slideToggle('slow');
    }
);

$('.open').click(
    function(){
        $('.slide').slideToggle('slow');
    }
)

CSS

.slide{
 height: 100px;
 width: 100px;
 background: red;
}

HTML

<div class="slide">Hello how do yo do</div>
<div class="open">open</div>
...