以下代码导致内存泄漏(您可以看到这种情况发生的越多,越慢,越慢)。不幸的是,我无法在我的办公室下载 javascript 分析器(我可以,只需几天/几周)。
这是代码,只是下拉菜单的一些简单转换:
$(document).ready(function(){
breadcrumbOver = function () {
$(this).stop().animate({ backgroundColor: "#3393b5", textIndent: 15 }, 250);
}
breadcrumbOut = function () {
$(this).stop().animate({ backgroundColor: "#738793", textIndent: 0 }, 250);
}
$("nav ul li").hover(
function () {
$(this).children('ul.child').stop().slideDown('fast').children('li').hover(breadcrumbOver, breadcrumbOut);
},
function () {
$(this).children('ul.child').stop().slideUp('fast').unbind(breadcrumbOver, breadcrumbOut);
}
);
});
任何人都可以看到可能发生内存泄漏的位置吗?
编辑:现场示例 - http://rcnhca.org.uk/sandbox/(反复滚动“健康、安全和安保”,然后滚动它的孩子以查看效果,动画 slideDown 有时不会触发,如果你滚入滚出足够快)。