好的,我正在使用.load函数将一个div从一个页面加载到当前页面:
<code>
$(document).ready(function(){
var myUrl = "test.php"
$("#tags-load").load(myUrl + " #tags");
$("#share-load").load(myUrl + " .shareinload");
$("#comments-load").load(myUrl + " #comments");
});
</code>
这是我的问题,上面的方法在IE 8及更低版本中不起作用,但在IE9和Chrome以及Firefox中都有效。
我做了一些乱搞,发现只有当我没有从test.php调用任何图像时,上面的代码才能在IE8中工作但是(既不是img标签图像也不是背景图像)。然后我检查了HTTP代码以查看我是否在那里收到错误,结果发现我在加载图像时遇到了304错误。这让我相信IE8在缓存图像时必须有某种挂断。所以我改变了我的代码以关闭jquery请求的缓存:
<code>
$.ajax({
cache: false
});
$(document).ready(function(){
var myUrl = "test.php"
$("#tags-load").load(myUrl + " #tags");
$("#share-load").load(myUrl + " .shareinload");
$("#comments-load").load(myUrl + " #comments");
});
</code>
尽管改变了代码,但我仍然遇到304错误。我对Jquery很新,我被困在这里,如果有人能帮我找到解决方案,我将不胜感激,
谢谢
答案 0 :(得分:0)
没有理由提出3页请求,如果它是同一页面。
你可以试试这个:
var myUrl = "test.php";
$.ajax({
url: myUrl,
cache: false,
success: function(html){
var tags = $('#tags',html).html();
var shareinload = $('.shareinload',html).html();
var comments = $('#comments',html).html();
$("#tags-load").html(tags);
$("#share-load").html(shareinload);
$("#comments-load").html(comments);
}
});