2013-07-10 8 views
6

Ich versuche, jQuery slideDown() Animation zu arbeiten, aber in meinem Fall der Text, der sollte nach unten rutschen, zu bekommen nur erscheint .. Wie mache ich es mit der Animation erscheinen an Ort und Stelle?jQuery slidedown() Animation nicht funktioniert

Ich habe versucht, manuell die Geschwindigkeit zu spezifizieren, aber Endergebnis war das gleiche.

HTML:

<section class="subscribe"> 
    <button id="submitBtn" type="submit">Subscribe</button> 
    <p></p> 
</section> 

JavaScript:

$(function() { 
    $("#submitBtn").click(function (event) { 
     $(".subscribe p").html("Thanks for your interest!").slideDown({ 
         duration: 4000 
        }); 
    }); 
}); 

JSFiddle:http://jsfiddle.net/ahmadka/A2mmP/

Antwort

7

Ihr p Element ist bereits angezeigt, wenn Sie den Text eingeben und tr y, um es nach unten zu schieben. Also keine Animation wird benötigt.

$(function() { 
    $("#submitBtn").click(function (event) { 
    $(".subscribe p").hide().html("Thanks for your interest!").slideDown(4000); 
    }); 
}); 
+2

Ich wusste Sichtbarkeit etwas damit zu tun hatte .. andere Methoden versucht, es zu verbergen, aber nicht Arbeit ... Dein Code funktioniert! Danke Kumpel! : D – Ahmad

+0

Sie können es auch auf dem CSS ausblenden. Schneller für den Render. – Alvaro

4

Sie können den Inhalt zunächst versteckt tun haben und dann einfach mit der slideDown Funktion zeigt:

HTML

<section class="subscribe"> 
    <button id="submitBtn" type="submit">Subscribe</button> 
    <p>Thanks for your interest!</p> 
</section> 

CSS

.subscribe p{ 
    display:none; 
} 

jQuery

$(function() { 
    $("#submitBtn").click(function (event) { 
     $(".subscribe p").slideDown({duration: 400}); 
    }); 
}); 

Wohnbeispiel: http://jsfiddle.net/A2mmP/2/

3

Ihr modifizierten Code

$(function() { 
    $("#submitBtn").click(function (event) { 
     $(".subscribe p").html("Thanks for your interest!").hide().slideDown('400'); 
    }); 
}); 

prüfen diese demo