在整个周末离开我的浏览器窗口后,我今天早上来到办公室,带着一个软管IE。我正在做一个'统计'仪表板栏,每30秒更新一次。
返回是一个html字符串,作为完整的xcontents
我将这个添加到DOM中,在我的'真正'div之后,#ajaxreturn,它实际上是其他东西。我想让它出现在它之后。
如果存在,请将其从dom中移除。 将结果附加到dom。
$(function(){
function getAD() {
var request = $.ajax({
url: "getdashboard/"
, type: "GET"
, cache: false
, dataType: "html"
});
request.done(function(msg) {
if($('#adminbar').length){
$('#adminbar').remove();
}
$('#ajaxreturn').after(msg);
});
}
//INIT AND RELOAD INTERVALS
//get DashBoard
getAD();
//and then look for updates every 30 seconds
var gb = setInterval(getAD,3000);
});
我的假设是,这会破坏或将其发送到垃圾处理。但似乎并非如此。我每30秒向IE会话添加大约15KB。
除了remove()之外,我应该使用其他东西吗?
答案 0 :(得分:0)
据我所知,jQuery缓存所有内容并将其放入$ .cache
您需要使用以下命令禁用缓存:
$.ajaxSetup({cache:false});
jQuery.cache = {}
Sizzle.selectors.cacheLength
$.expr.cacheLength = 1
https://github.com/jquery/sizzle/wiki/Sizzle-Documentation#sizzleselectorscachelength--number