2011-08-01 3 views
0

이메일 뉴스 레터 가입 양식에 사용되는 div가 있습니다. 링크를 클릭하면이 div가 표시되고 사용자는 텍스트 상자와 버튼 및 옵션 체크 박스를 볼 수 있습니다. 이메일 주소를 제출하면, 다음과 같은 코드가 시작됩니다 : 반환 사업부의 내용이 숨겨져 있습니다 (체크 박스, 버튼 및 텍스트 상자)과 환영 메시지에지연이있는 버그로 인해 jQuery fadeToggle이 제대로 작동하지 않습니까?

$.post("/asynchronous/addEmail.aspx", 
{email: $(".emailPopupTextBox").val(), optin: thisOptIn }, 
function (data) { 
    $(".emailText").hide(); 
    $(".thankYouText").show(); 
    $('.emailPopupBox').delay(800).fadeToggle(); }); 

이 사용자에게 표시됩니다. 처음에는 너무 빠르게 진행되었고 이메일 팝업은 너무 빨리 사라졌습니다. 그래서 .delay을 추가했는데 emailpopup div에 환영 메시지가 표시되고 지연이 실행되고 토글 페이드가 실행되지만 대신 즉시 사라지는 대신 신속하게 사라지고 빠르게 깜박이며 감사 메시지로 표시됩니다. 처음에 div를 표시하기 위해 클릭 한 링크를 클릭하면 div가 실제로 빠르게 표시되지만 숨기지 않습니다.

편집 : .fadeToggle이 더 이상 제대로 작동하지 않는 것으로 보입니다. 나는이 문제를 추적하고있다.

+0

jsfidle에? – Awea

답변

0
$.post("/asynchronous/addEmail.aspx", 
{email: $(".emailPopupTextBox").val(), optin: thisOptIn }, 
function (data) { 
    $(".emailText").hide(); 
    $(".thankYouText").show(); 
    $('.emailPopupBox').fadeToggle(800); 
}); 

당신이 당신의 HTML 또는 둘 모두와 함께 게시 할 수 있습니다

+0

.post 뒤에 팝업이 계속 표시됩니다. –

+0

emailtext 및 emailpopbox가 삭제 된 후에 찰리 텍스트를 표시하고 싶습니까? – rickyduck

0

지연 대신 "느림"을 설정하거나 지연 시간을 전달하여 여유를 사용할 수 있습니다.

처럼 :

$.post("/asynchronous/addEmail.aspx", 
    {email: $(".emailPopupTextBox").val(), optin: thisOptIn }, 
    function (data) { 
     $(".emailText").hide("slow"); 
     $(".thankYouText").show("slow"); 
     $('.emailPopupBox').fadeToggle("slow"); 
    }); 
); 

편집 jsfiddle하도록 코드를 작성하지 않을 경우, 그 시도

// You can change easingFactor to get the desired easing. 

var easingFactor = 800; 

$.post("/asynchronous/addEmail.aspx", 
    {email: $(".emailPopupTextBox").val(), optin: thisOptIn }, 
    function (data) { 
     $(".emailText").hide(easingFactor); 
     $(".thankYouText").show(easingFactor); 
     $('.emailPopupBox').fadeToggle(easingFactor); 
    }); 
); 
+0

hide ("slow")와 show ("slow")는 아무런 차이가 없습니다. – rickyduck

+0

ok 그러면 easing 대신'duration'을 추가 할 수 있습니다. 내가 대답을 편집 오전 –

+0

어느 쪽이든, 그것은 여전히 ​​지속되고 fadeToggle 함수는 더 이상 작동하지 않는 것 같습니다. –

관련 문제