这个JavaScript / jQuery代码是否在ie8或其他浏览器中泄漏
Does this JavaScript / jQuery code leak in ie8 or other browsers?
我花了很多时间阅读有关内存泄漏的信息。我很困惑,因为对于 ie6 来说是正确的,对于 ie8 或更新的浏览器来说不再是真的。据我了解,这段代码可能会/会泄漏,因为在函数中,我创建了一个 DOM 元素,我在其上绑定了一个事件。我的理解正确吗?如果是这样,注释中的代码也会泄漏吗?如果是这样,不泄漏的最佳方法是什么?
function somefunc() {
var $CodeInstallation, $selInstallation;
$CodeInstallation = jQuery(<...some form tag...>);
$selInstallation = jQuery(
'<input value="select"' +
' type="button" name="selInstallation" ' +
' id="idSelInstallation"/>')
.appendTo($CodeInstallation.parent());
// should I do that instead ???
/*
jQuery('<input value="select"' +
' type="button" name="selInstallation" ' +
' id="idSelInstallation"/>')
.appendTo($CodeInstallation.parent());
$selInstallation = jQuery('#idSelInstallation');
*/
$selInstallation.click( function() {
alert('click!');
}); // click
}
感谢Pointy和Kevin B。答案是否定的,因为jQuery处理事件而不是附加到DOM对象的方式。
相关文章:
- 是什么让一个“;Uncaught RangeError:超过了最大调用堆栈大小“;错误(Chrome,在其他浏览器中显示
- jquery代码在Mozilla中有效,但在其他浏览器上无效
- java脚本在Chrome和其他浏览器中对LocaleTimeString的不同行为
- Javascript的某些部分在Chrome中不起作用,但在其他浏览器中可以完美工作
- 如何隐藏空<span>在IE中使用javascript.(注意,在其他浏览器中工作正常)
- 我的时间倒计时脚本在谷歌浏览器中工作正常,但在其他浏览器中打开时它显示为南楠
- 使用一个Javascript函数提交多个表单可以在FF中工作,而不需要其他浏览器
- 带有Safari的Javascript;不起作用——所有其他浏览器都起作用
- Javascript可以在chrome中使用,但不能在其他浏览器中使用
- 有没有一种方法可以在过滤掉iOS Chrome、Firefox和其他浏览器的同时检测iOS safari
- 在其他浏览器中打开页面时,令牌未保存在$window.sessionStorage中
- 无法从IE中的data.responseText获取结果,但在其他浏览器中工作
- 在Firefox中使用锤子捏 错误地定向 - 适用于所有其他浏览器
- 索引在IE中导致错误;在其他浏览器中工作
- 将JSON对象转换为敲除observable在IE8中不起作用,但在所有其他浏览器中都起作用
- Javascript可以在Safari上运行,但不能在任何其他浏览器上运行
- 滑动在IE中不起作用.但它在所有其他浏览器中都能正常工作
- 滑块图像在Internet Explorer中不起作用,但在其他浏览器中有效
- 我怎样才能摆脱chrome或其他浏览器中的录音符号
- 这个JavaScript / jQuery代码是否在ie8或其他浏览器中泄漏