【问题标题】:css animation during heavy js computations繁重的 js 计算期间的 css 动画
【发布时间】:2016-10-18 17:33:41
【问题描述】:

我在 javascript 程序中有一个方法,有时会进行大量计算(我什至无法假设何时),我想通知用户后台正在发生某些事情,他现在无法访问正在处理的数据,用css中的动画完成了它,但是当发生大量计算时,浏览器甚至不会触发动画,而是冻结。使用 setInterval 和 setTimeout 尝试了一些技巧,但它们没有按预期工作。我刚刚找到的唯一合理的解决方案是使用 webWorkers,在我的情况下,它会期望大量的重构工作。您是否想到了任何其他技巧来让 javascript 完成其工作并同时向用户显示正在处理的过程?

谢谢

【问题讨论】:

  • 不,javascript 在 ui 线程上运行,这意味着 ui 更新和代码执行永远不会同时发生。 Web Worker 旨在解决这个问题。

标签: javascript css animation


【解决方案1】:

您可以尝试在进行计算之前显示动画 gif(想想 YouTube 加载圈),并在计算完成后使用 display: none CSS 属性将其隐藏。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-19
    • 1970-01-01
    • 2019-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-28
    • 1970-01-01
    相关资源
    最近更新 更多