所有IE版本中的jQuery .load()问题

dep*_*epi 6 ajax jquery internet-explorer load

我正在尝试做一个动态模板.我在侧边栏中有链接,我想在jQuery中使用.load()动态加载内容.

我有以下jQuery代码:

// Services AJAX page loader
 jQuery('.sidenav a').click(function(){
  $page_url = jQuery(this).attr('href');

  // load page
  jQuery('#content').fadeOut(200, function() {
   jQuery(this).load($page_url, function(response, status, xhr) {
    jQuery(this).fadeIn(200);
   });
  });

  // set pagetitle
  jQuery('.pagetitle span').text(jQuery(this).contents().first().text());

  // change CSS current_page_item
  jQuery('.sidenav li').removeClass('current_page_item');
  jQuery(this).parent().addClass('current_page_item');

  return false;
 });
Run Code Online (Sandbox Code Playgroud)

基本上它除了在IE中工作得很好.

当我点击首次加载没有AJAX的链接时,就会出现问题.你可以在这里看到一个例子.当您单击侧栏中的"Profil/vision"时,它将再次在#content div中加载整个站点.它只发生在所有版本的IE中.在其他浏览器中它正常工作.

任何想法可能是什么问题?

谢谢.

Gab*_*oli 10

我相信这是一个缓存问题..

由于url与当前显示的页面相同,因此IE使用缓存(包含所有页面)并将其插入#contentdiv中.

尝试在.load()请求时添加时间戳

.load($page_url,{noncache: new Date().getTime()},function(){..})