Ich habe eine Webseite, die eine langsame und dramatische Anfangslast hat, wo die Überschrift in 3 Teilen erscheint. Ich habe auch Registerkarten, die bei einem Klick den Inhalt der aktuellen "Seite" entfernen und in den neuen "Seiten" Inhalt übergehen. Wenn also ein Tab angeklickt wird, bevor der anfängliche Header-Übergang beendet ist, überlappen sie sich und die Dinge werden unordentlich. Ich habe versucht, mit stop() und beenden(), aber ich bin mir nicht sicher, wo Sie sie setzen. Ich denke, ich versuche zu sagen, dass wenn eine Registerkarte angeklickt wird, die anfängliche Animation sofort beendet wird, bevor die anderen gestartet werden. Ich bin mir jedoch nicht sicher, wie ich diese Animation ausrichten soll.Wie ziele ich auf ein jquery-Ereignis ab und beende es, bevor ein anderes startet?
Initial Header Animation:
$.fn.topSlide1 = function() {
setTimeout (function()
{
$('.part1').delay(1000).animate({ opacity: '1' }, 'slow');
setTimeout (function() {
$('.part2').delay(1000).animate({ opacity: '1'}, 'slow');
setTimeout(function() {
$('.part3').delay(1000).animate({ opacity: '1' }, 'slow');
}, 1100);
}, 1100);
}, 1100);
return this;
}
Meine Animation für eine geklickt Registerkarte, wenn die erste Seite ist die eine noch angezeigt wird:
if (current == '#mag1')
{
/*Stop animation code here??*/
/*Starts the fading away transition*/
$('.part1').animate({ opacity:'0'}, 'slow');
$('.part2').animate({ opacity:'0'}, 'slow');
$('.part3').animate({ opacity:'0'}, 'slow');
$('.bio').fadeDown();
/*Slides up new page*/
$(id).fadeUp();
current = id;
}
Die einfache Methode stop() allein tut es nicht, obwohl ich nicht erkennen, habe ich mehrere Selektoren in einem JQuery Anruf so vielen Dank für dieses tid Bit umfassen könnte. Was scheint zu passieren ist, dass beim Klicken, stoppt tatsächlich die aktuelle Animation, ob es Teil 1 2 oder 3 ist. Aber es endet nicht die Ausbreitung/Warteschlange dieser Animationen. Wenn es also Teil 2 ist, wird Teil 2 enden, aber Teil 3 wird unabhängig davon beginnen, zu welcher Zeit der Code bereits zum Ausblendungsübergang übergegangen ist. –