2014-01-28 5 views
0

У меня есть такой код, чтобы показать/скрыть всплывающие окна и дивыJQuery тумблер фоновое изображение

function ToggleSendForm() { 

    var effect = 'slide'; 
    var options = { direction: 'right', easing: 'swing' }; 
    var duration = 1000; 
    $(".popup").toggle(effect, options, duration); 
    var effectFade = 'fade'; 
    var durationFade = 1000; 
    $(".toggler").toggle(effectFade, durationFade); 
}; 

function UnToggleSendForm() { 

    var effect = 'slide'; 
    var options = { direction: 'right', easing: 'swing' }; 
    var duration = 1000; 
    $(".popup").toggle(effect, options, duration); 
    var effectFade = 'fade'; 
    var durationFade = 1000; 
    $(".toggler").toggle(effectFade, durationFade); 
}; 

<div class="toggler" style="display: none"></div> 
<div class="popup" style="background-color: #ffffff; display: none"> 
<div class="container" style="padding: 20px"> 

Так всплывающие слайды с правой стороны.

Моя проблема во время слайд-всплывающего окна прозрачна. Когда он расширяется, он становится белым. Но мне нужно, чтобы он был белым, когда он тоже скользит. Что я пропустил?

+1

Александр Вам нужно сделать скрипку на http://jsfiddle.net – Zword

+0

'jsfiddle.net' - ваш друг – Lance

ответ

0
{ queue: false }; 

Это вызвано очередью анимации в jQuery. Установите очередь на false в параметрах переключения.

function ToggleSendForm() { 

    var effect = 'slide'; 
    var options = { direction: 'right', easing: 'swing' }; 
    var duration = 1000; 
    $(".popup").toggle(effect, options, duration); 
    var effectFade = 'fade'; 
    var durationFade = 1000; 
    $(".toggler").toggle(effectFade, { queue: false }, durationFade); 
}; 

function UnToggleSendForm() { 

    var effect = 'slide'; 
    var options = { direction: 'right', easing: 'swing' }; 
    var duration = 1000; 
    $(".popup").toggle(effect, options, duration); 
    var effectFade = 'fade'; 
    var durationFade = 1000; 
    $(".toggler").toggle(effectFade, { queue: false }, durationFade); 
}; 

JQuery API Doc:

очереди (по умолчанию: правда) Тип: Boolean или Строка логическое значение, указывающее ли поместить анимацию в очереди эффектов. Если false, анимация начнется немедленно. Начиная с jQuery 1.7, опция очереди также может принимать строку, и в этом случае анимация добавляется в очередь , представленную этой строкой. Когда используется пользовательское имя очереди, анимация не запускается автоматически; вы должны позвонить .dequeue («queuename»), чтобы запустить его.

+0

не помог. что может повлиять на div? Я думаю, мой код правильный, потому что есть еще один простой пример, и он работает с фоном. Таким образом, проблема в том, что (стиль, возможно) может сломать цвет фона здесь. – Alexander

+0

sry, вы должны установить этот параметр для последнего переключения в каждой функции, а не первой. –

+0

Я думаю, это не мое дело. потому что у меня есть анимация. все элементы управления из внутреннего div (popup) являются слайдами справа. Моя проблема в том, что фон div прозрачен. Даже границы не показаны во время движения. Так что я думаю, что это не проблема со стороны. – Alexander

Смежные вопросы