基本上,我有一些自定义控件,例如带有炫酷效果的滑块和下拉菜单。
他们严重依赖getBoundingClientRect来实现CSS的灵活性,例如在不影响控件工作原理的情况下更改填充/字体大小/其他内容。
缺点是,如此频繁地调用getBoundingClientRect有点昂贵,并且由于代码的布局方式,有时会在同一帧中为同一元素多次调用。
现在我可以尝试为每个元素只调用一次,但是如果一遍,那么这将是一团混乱。另外,我认为我可以将值存储在全局框架#的基础上。
js中是否有可用的全局文档框架?
答案 0 :(得分:0)
问题仍然悬而未决,但我找到了一种实现自己的帧计数器的方法
window.render_stats = {
"total_frames" : 0,
};
(function() {
render_stats.total_frames += 1;
requestAnimationFrame(arguments.callee);
})();