Ich versuche es so zu machen, dass wenn du auf einen Link klickst, entfernt er ein div (mit einigen Absätzen und Text) und fügt ein anderes div ein (mit einigen Absätzen und etwas Text). Ich verwende jQuery, um diese ein- und auszublenden. Das Ausblenden des ursprünglichen Div funktioniert, wenn Sie auf den Link klicken, und dann habe ich einen Schalter, um zu bestimmen, was eingeblendet wird. Das auf "langsam" eingestellte FadeIn scheint jedoch sofort zu erfolgen.jQuery fadeIn 'langsam' sofort erscheinend
Hier ist der relevante Teil des Codes (der Rest ist nur andere Fälle):
$(document).ready(function() {
$('.nav-link').click(function() {
var linkClicked = $(this).attr("id");
$('.content').fadeOut('fast');
switch(linkClicked) {
case 'home':
console.log("linkClicked = "+linkClicked);
$('#home-content').fadeIn('slow', function() {
$(this).css("display", "inline");
$(this).css("opacity", 100);
});
break;
Edit:
So nach fadeTo zu fadeOut ändern und "langsam" in den fadeOut Wechsel zu „schnell ", es hat gut funktioniert und den Übergang gemacht, wie ich es möchte. Wenn ich jedoch jetzt auf "home" klicke, wird das div in eine "block" -Position bewegt (es spuckt es in die untere linke Ecke), bevor es sich wieder an die richtige Stelle in der Mitte meines Containers schiebt. Es tut dies nur, wenn ich nach Hause klicke und keine anderen meiner SideNav-Links ... die alle denselben Code haben (Home ist nur der erste im Switch-Fall). Irgendwelche Ideen?
aktualisiert Beschreibung oben dass die Verwendung von fadeOut und "fast" den Übergang funktionierte, aber jetzt wechselt das div kurz in eine Blockpositionierung, bevor es wieder inline geht. –