2010-12-20 9 views
1

Ich weiß, dass dies wahrscheinlich ein Neuling Frage sein muss, aber da ich über jquery nicht viel weiß, ich habe es hier fragen:jQuery: erster Rückruf nicht fließend ist (slidedown-Effekt)

Ich habe ein Element das muss unterschiedliche Inhalte ein- auf verschiedenen buttons.Now klicken ich hier veröffentlichen werde, wie ich mein Javascript nennen:

Onclick = „javascript: gotoSubonderdeelmenu (this);“

Das bekommt das Div-Element, und damit bekomme ich die richtige ID für den Inhalt zu zeigen. Jetzt ist meine jQuery-Code:

function gotoSubonderdeelmenu(obj) { 
    displaySubMenu(obj.id); 
} 



function displaySubMenu(niveauId) { 
    $.get("submenu.htm", { niveau : niveauId }, function(data) { 
     $('#submenu').html(data); 
     $('#submenu').slideDown('slow',function(){ 
      $('#overzicht').fadeTo(500,0.25,function(){}); 
      $('#terugknop').show(); 
     }); 
    }); 
} 

Es ist immer gleitet nur fließend nach unten wie man erwarten würde, mit Ausnahme des ersten Mal es aufgerufen wird.

Wer hat eine Ahnung, wie man das löst?

+0

Was * ist *, es zu tun, erscheinen nur? –

+0

@Nick Craver: Es erscheint nur und in einem Augenblick schiebt alles sofort nach unten, um genug Platz zu bekommen. – toomuchcs

Antwort

2

Sie müssen den Inhalt .hide() so gleitet er/dehnt sich aus dem Nichts, wie folgt aus:

$.get("submenu.htm", { niveau : niveauId }, function(data) { 
    $('#submenu').html(data).hide().slideDown('slow',function(){ 
     $('#overzicht').fadeTo(500,0.25,function(){}); 
     $('#terugknop').show(); 
    }); 
}); 
+0

danke! Das hat den Trick gemacht. Ich schulde dir etwas ;) – toomuchcs