Wie um zu zeigen, ein div-das ist verborgen durch css auf den button klicken

Ich bin ziemlich neu bei Jquery und ich möchte einen versteckten div css: display:none und sobald ein button geklickt wurde, die $(..).slideDown ausgeführt wird, und das div zeigt seine conents. Ich versuchen würde diese.

<style> .hidden-div{ display:none } </style>

<div class="hidden-div"> You can't see me </div>

<button onclick="show-div()"> Show Above Div </button>


<script>

    function show-div(){

        $('.hidden-div').slideDown('fast');
        //more stuff...
    }
</script>

Diese nicht wirklich schieben Sie es nach unten genau, wie es überschneidet sich alles andere ? Auch ich versuchen würde, nur die Einstellung der class="hidden-div" zu class="display-div" aber dann die slideDown-animation nicht ausgeführt werden kann.

Nun könnte ich sagen $('hidden-div').hide() nur nach dem div-Element und entfernen Sie die css-insgesamt aber schafft es das problem wo ich sehe das div-Element und dann wird es versteckt, es ist nur 0,5 sec, was am Anfang der Seite geladen, aber seine schlecht Aussehen.

Also wer weiß eine Lösung?


Eine Lösung gefunden, um mein eigenes problem..

//rehide the div, not sure why, but it works.
$('.hidden-div').hide(); 


//change class so it no longer display:none 
//but it will not show the div as .hide() was execute above.
$('.hidden-div').attr('class','showing-div'); 


//Slide it down and everything works.
$('.hidden-div').slideDown('fast');



//this can be done in 1 liner. (thank you, Mohsen for chaining explanation)
$('.hidden-div').hide().attr('class','showing-div').slideDown('fast');

Hoffe, dies ist hilfreich für jemanden.

  • Markdown ist nicht BBcode.
  • Stackoverflow hat eine Funktion, um Ihre eigene Frage zu beantworten.
InformationsquelleAutor Kivylius | 2011-09-26
Schreibe einen Kommentar