Jquery页面转换不平滑

Jquery页面转换不平滑,jquery,Jquery,我开始学习jquery,并使用了一些pagefadein和fadeout方法。它在我的本地主机上运行良好。当我把它放在服务器上时,转换效果并不平滑。正文内容FadeOut和页脚部分将在转到下一页之前出现,并且我的页眉在转到下一页后会结巴 我在每一页中都使用以下代码 <script type="text/javascript" src="js/jquery-2.0.1.js"></script> <script type="text/javascript"> $

我开始学习jquery,并使用了一些pagefadein和fadeout方法。它在我的本地主机上运行良好。当我把它放在服务器上时,转换效果并不平滑。正文内容FadeOut和页脚部分将在转到下一页之前出现,并且我的页眉在转到下一页后会结巴

我在每一页中都使用以下代码

<script type="text/javascript" src="js/jquery-2.0.1.js"></script>
<script type="text/javascript">
$(function(){
  $('#matter1').hide().fadeIn(2000);
  $('a.nav_font').click(function(){
      var link = $(this).attr('href');
      $('#matter1').fadeOut(1000, function(){
          window.location.href = link;
      });
      return false;
   });
 });
</script>

$(函数(){
$('matter1').hide().fadeIn(2000);
$('a.nav_font')。单击(函数(){
var link=$(this.attr('href');
$(“#matter1”).fadeOut(1000,function(){
window.location.href=链接;
});
返回false;
});
});
$(function(){…})
在DOM就绪时运行函数。不幸的是,浏览器在加载时呈现内容,因此总体效果是浏览器在加载时呈现文档,然后在加载后隐藏并淡入

这在本地计算机上不可见,因为内容加载太快,浏览器可能无法在代码运行之前以增量方式呈现它。在存在延迟的真实服务器上,浏览器有机会在DOM准备就绪之前进行渲染

与其使用on-DOM-ready回调作为触发器来隐藏它,不如尝试将它作为绝对的第一件事隐藏在
#matter1
中:

<div id="matter1">
    <script type="text/javascript">
        $("#matter1").hide();
    </script>
    ...

$(“#matter1”).hide();
...

然后只要
#matter1
存在,它就会被隐藏。然后在您的DOM就绪处理程序中,像以前一样执行所有操作,只是现在不再需要
.hide()

@abc123:并使您的站点对未启用JavaScript的用户完全无用?不用了,谢谢。