Ajax 加载导致内容跳转

Ajax load causes content to jump

当我使用 Ajax 从另一个页面加载内容时,我的页脚会跳到页眉下方,然后再向下移动。

我认为这是由 $('#container').remove(); 引起的,这意味着我实际上是在加载新容器之前移除容器。

有没有办法阻止我的页脚在 Ajax 加载之间上下跳动?

这是我的 JQuery

$('nav a').on('click', function(e) {
   e.preventDefault();
   var url = this.href;
   $('nav a.highlight').removeClass('highlight');
   $(this).addClass('highlight');
   $('#container').remove();
   $('#content').load(url + ' #container').hide().fadeIn(3500);
});

我已经在测试服务器 here 上上传了一个发生在我身上的例子。
我不得不上传它作为一个片段或笔不允许超过一个 HTML 页

我并不完美,但我认为这可以帮助您获得一个想法。您可以设置 #content 的最小高度,也可以添加 class .stick_footer footer 删除容器后立即删除 class .stick_footer 加载数据后。 抱歉英语不好。

.stick_footer{
  position:absolute; bottom:0;left:0;right:0; top:9em;
}

不删除#container

$('nav a').on('click', function(e) {
  e.preventDefault();
  var url = this.href;

  $('nav a.highlight').removeClass('highlight');
  $(this).addClass('highlight');

  //$('#container').remove();
  $('#content').load(url + ' #container').hide().fadeIn(3500);
});