2016-02-12 5 views
0

В настоящее время я пытаюсь создать сценарий, который заставляет переход на переход от страницы к странице при нажатии на привязку. Я уже сделал сценарий, но он, похоже, не работает.Страница FadeIn и FadeOut Transition

Мой код выглядит следующим образом:

$("body").load(function() { 
    $(this).fadeIn(200); 
}); 

$("a").click(function() { 
    $link = $(this).attr("href"); 
    $("body").fadeOut(200); 
    window.location.replace($link); 
}); 

Это не похоже, чтобы сделать переходы FadeIn и FADEOUT. Это все еще обычная pageload.

+0

что не работает? – madalinivascu

+0

Это не делает переход затухания. Похоже на любую другую pageload. –

+0

функция загрузки ajax нуждается в первом параметре ссылки загруженного html – madalinivascu

ответ

1

Первых скрыть тело страницы при загрузке страницы, то вам необходимо поместить Перенаправляющую линию в полной функции fadeOut

Попробуйте этот код:

$(document).ready(function() { 
    $('body').hide().fadeIn(200); 
    $("a").click(function(e) { 
     e.preventDefault(); 
     $link = $(this).attr("href"); 
     $("body").fadeOut(200,function(){ 
      window.location = $link; 
     }); 
    }); 
}); 
3

Вам необходимо скрыть элемент изначально либо .hide(), либо с помощью CSS display:none;.

$(document).ready(function() { 
    $('body').hide().fadeIn(200); 
}); 
+0

Ahhhhh, вы правы! Спасибо! –

+1

Чтобы предотвратить первоначальное мерцание из-за 'hide()', запущенного на DOM, отображение CSS ': none' может быть лучшим решением. –

1

Вы должны используйте setTimeout во времени window.location.replace() для выполнения после того, как текущий body погас как:

$("a").click(function() { 
    $link = $(this).attr("href"); 
    $("body").fadeOut(200); 
    setTimeout(function(){ 
     window.location.replace($link); 
    },200); 
    return false; 
}); 

Не забудьте вернуть false в конце функции иначе действие по умолчанию для ссылки click i.e перенаправление предшествует любому другому действию, связанному с якорем.

Но, искренне, это даст вам эффект плавного выцветания с текущей страницы, но не оказывает плавного воздействия на перенаправленную страницу, если только она не реализована вами.