2015-04-03 79 views
0

我添加了一段代码,使锚链接跳转到另一页更加平滑。'返回'浏览器按钮返回白页

$('.link-fade').click(function(){ 
     var href= $(this).attr('href'); 

     // do animation 
     $('body').fadeOut(500, function(){ 
      // go to link when animation completes 
      window.location=href; 
     }) 

     // over ride browser following link when clicked 
     return false; 
}) 

问题:当我按下一个链接,之后打的“返回”浏览器按钮,有时它使整个页的白皮书,并加载什么。

P.S:我的网页也包含pace.js。

回答

0

而不是返回false的,试试这个

$('.link-fade').click(function(e){ 

    e.preventDefault(); 

    var href= $(this).attr('href'); 

    // do animation 
    $('body').fadeOut(500, function(){ 
     // go to link when animation completes 
     window.location=href; 
    }); 
}); 
+0

均田固定的问题,火狐仍返回的白页寿。其他一切似乎都很好。小心解释一下它为什么有效? :P – Andrew 2015-04-03 10:29:12

+0

@Andrew Browser有一些默认操作链接到页面上的元素。所以为了防止这些行为,正确的方法是使用preventDefault()函数。返回false可能会阻止浏览器执行一些后处理,如存储正确的返回url(在本例中为当前页面url) – 2015-04-03 10:32:53

+0

谢谢,但由于firefox不能用于PreventDefault,它将无法正常工作,我猜对了? – Andrew 2015-04-03 10:34:06