我们正在构建一个使用 Twitter Bootstrap 作为框架的网络应用程序,但在显示/隐藏工具提示时遇到问题。除了尝试找到实际问题的解决方案外,我对我们同时使用的解决方法有疑问:
在性能方面,使用 setInterval() 通常是个坏主意吗?
我如何衡量由此造成的性能影响?
是否有更好的方法来不断检查元素的存在并删除它们?
// temporary workaround to remove unclosed tooltips
setInterval(function() {
if ( $('.tooltip.in').length > 1 ) {
$('.tooltip').remove();
}
}, 1000);
最佳答案
如果您真的,真的担心性能,使用实时节点列表可能会更快:
var tooltipInNodes = document.getElementsByClassName("tooltip in");
var tooltipNodes = document.getElementsByClassName("tooltip");
setInterval(function() {
if ( tooltipInNodes.length > 1 ) {
$(tooltipNodes).remove();
}
}, 1000);
虽然这不太可能产生太大的影响,并且如前所述,使用长间隔的 setInterval(1 秒大,4 毫秒小)不太可能产生任何重大影响。
关于javascript - setInterval() 如何影响性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16104014/