使用Chrome的开发工具,我逐渐明白开发工具中的闪存节点是由于DOM的变化.这是否也会导致回流?
尽管结果包含相同的元素,但以下似乎存在功能差异:
var as1 = $("body").find("tr a"); // Causes to flash var as2 = $("body").find("tr").find("a"); // No flash
您可以在以下代码段中看到此行为.如果您导航到内部标记,您将看到常规闪烁(在Chrome开发工具中).如果两种方法都导致DOM更改,则由于不同步间隔,闪烁将是不规则的.
setInterval(function() {
var a = $("body").find("tr a");
console.log("See Chrome dev tools for synchronous flash with this message.");
}, 2000);
setInterval(function() { var a = $("body").find("tr").find("a"); }, 1700);
Hello