我有一段代码与地理编码联系。 这是通过跨域请求完成的。对于每个请求,我创建一个唯一的回调函数。 我已经注意到DOM检查器中所有这些旧请求“堆积”了。由于我将网站更改为更像App的行为(并且用户因此停留在同一页面上),这可能会成为一个问题。
如何清除这些旧请求和变量? 只是为了清除DOM并防止这种明显的内存浪费。
$.ajax({
url: 'http://nominatim.openstreetmap.org/search',
type: 'GET',
dataType: 'jsonp',
jsonp: 'false',
jsonpCallback: 'json_callback' + myGeocoder.requestIndex,
data: {
format: 'json',
q: request.term,
addressdetails: 1,
limit: 10,
json_callback: 'json_callback' + myGeocoder.requestIndex
},
beforeSend: function(x) {
if (x && x.overrideMimeType) {
x.overrideMimeType("application/json;charset=UTF-8");
}
},
success: processResult
});
myGeocoder.requestIndex++;
在Firebug DOM检查员中,经过一些功能使用后:
json_callback0 undefined
json_callback1 undefined
json_callback2 undefined
json_callback3 undefined
json_callback4 undefined
json_callback5 undefined
json_callback6 undefined
json_callback7 undefined
json_callback8 undefined
json_callback9 undefined
依旧......