jQuery 页面转换使上一页空白
jQuery page transition makes previous page blank
我将以下脚本与 jQuery 结合使用,以便在页面之间导航时实现淡入淡出过渡:
$(document).ready(function() {
$("body").css("display", "none");
$("body").fadeIn(200);
$("a").click(function(event){
event.preventDefault();
linkLocation = this.href;
$("body").fadeOut(200, redirectPage);
});
function redirectPage() {
window.location = linkLocation;
}
});
仅使用链接在页面之间导航时工作正常,但使用浏览器上的后退按钮时,返回的页面是空白的。
如何让通过后退按钮导航到页面时正确显示页面?
使用后退按钮 returns 可以回到上一页离开前的状态(在本例中,完全淡出),至少我是这么理解的。如果我错了,请随时纠正我。
无论如何,我认为重新粉刷 DOM 可以解决您的问题(摘自 Coderwall):
$.fn.redraw = function(){
$(document).each(function(){
var redraw = this.offsetHeight;
});
};
并调用函数:$(document).redraw();
尝试使用委托怎么样
$("a").on('click', function(event){
event.preventDefault();
linkLocation = this.href;
$("body").fadeOut(200, redirectPage);
});
我将以下脚本与 jQuery 结合使用,以便在页面之间导航时实现淡入淡出过渡:
$(document).ready(function() {
$("body").css("display", "none");
$("body").fadeIn(200);
$("a").click(function(event){
event.preventDefault();
linkLocation = this.href;
$("body").fadeOut(200, redirectPage);
});
function redirectPage() {
window.location = linkLocation;
}
});
仅使用链接在页面之间导航时工作正常,但使用浏览器上的后退按钮时,返回的页面是空白的。
如何让通过后退按钮导航到页面时正确显示页面?
使用后退按钮 returns 可以回到上一页离开前的状态(在本例中,完全淡出),至少我是这么理解的。如果我错了,请随时纠正我。
无论如何,我认为重新粉刷 DOM 可以解决您的问题(摘自 Coderwall):
$.fn.redraw = function(){
$(document).each(function(){
var redraw = this.offsetHeight;
});
};
并调用函数:$(document).redraw();
尝试使用委托怎么样
$("a").on('click', function(event){
event.preventDefault();
linkLocation = this.href;
$("body").fadeOut(200, redirectPage);
});