2014-01-28 4 views
0

나는/숨기기 팝업 및 div의 오른쪽에서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의 문서 :

큐 (기본값 : true)를 입력합니다. false 인 경우 애니메이션이 즉시 시작됩니다. jQuery 1.7부터 대기열 옵션 은 문자열을 받아 들일 수 있으며,이 경우 애니메이션은 해당 문자열로 표시된 대기열에 추가됩니다. 사용자 지정 큐 이름을 사용하면 애니메이션이 자동으로 시작되지 않습니다. .dequeue ("queuename")를 호출하려면 으로 전화해야합니다.

+0

도움이되지 않았습니다. div에 어떤 ​​영향을 미칠 수 있습니까? 나는 다른 간단한 예제를 가지고 있기 때문에 내 코드가 정확하다고 생각하고 배경과 함께 작동합니다. 그래서 what (스타일 일 가능성이 있습니다) 문제는 여기서 배경색을 깰 수 있습니다. – Alexander

+0

sry,이 옵션을 각 기능의 마지막 토글로 설정해야합니다. –

+0

내 사건이 아닌 것 같아. 나는 애니메이션을 가지고 있기 때문에. inner의 div (팝업)의 모든 컨트롤은 오른쪽에서 슬라이드입니다. 내 문제는 div의 배경이 투명하다는 것입니다. 이동 중에도 테두리가 표시되지 않습니다. 그래서 나는 juery 문제가 아니라고 생각합니다. – Alexander