一旦我将一个函数插入到client.js中,我就会在浏览器/客户端中获得内存泄漏:
socket.on("botnet", function(t) {
var e = JSON.parse(t);
...
$(e).on('click', function (e) {
console.log(id);
});
});一旦我删除(任何)函数,就不会有内存泄漏。我错过了什么?为什么内存泄漏首先会发生?
发布于 2015-06-24 17:10:36
这可能是因为每次触发僵尸网络事件时,您都要创建一个单击事件。相反,我将使用带有.on函数的作用域,并将处理程序从它的内部移到外部作用域。
Do:.on("click","div",function(){});
而不是:.on("click",function(){});
并在套接字事件之外删除它,如下所示:
socket.on("botnet", function(t) {
var e = JSON.parse(t);
});
$(expectedClassOrID).on('click','div', function (e) {
console.log(id);
});https://stackoverflow.com/questions/31032798
复制相似问题