【发布时间】:2015-04-20 17:01:43
【问题描述】:
我目前已经完成了一个可以播放 Youtube 视频的网络应用程序。 Youtube HTML5 视频播放超级流畅(即使 CPU 处于 90+ 活动状态也没有明显的滞后或故障),而我的应用程序(使用 jQuery UI)接受表单输入或实现元素操作(用户或动态触发)。然而,当 Youtube 用 Flash 视频强行输入我的应用程序时,只要有表单输入、DOM 操作或光标在 UI 上快速移动,Flash 视频就会卡顿、咳嗽、打嗝并暂时停止(无论 CPU 级别如何。但音频还可以)直到 GUI 操作停止。
我的客户端 Web 应用是使用 Javascript 和 jQuery 2.10 构建的,并通过 Youtube 的 Data API v3 访问 Youtube 视频。
问题:无论 Youtube 当前通过其数据 API(版本3)?
问题:如果 Web Workers 不能帮助我,我可以通过什么明智的方式实施客户端(除了避免使用 Youtube Flash 视频)来解决这个困境?
任何明智的提示/解决方案将不胜感激。谢谢。
【问题讨论】:
-
这里需要注意几点:Web Workers 不能以任何方式与 DOM 交互,您可以通过消息传递信息,并在单独的线程中进行计算,但所有数据都必须通过消息传递与工人。因此,在这种情况下,Worker 将无法为您提供帮助。
-
我不确定网络工作者是否会对嵌入 Flash 视频有所帮助?
-
@WakeskaterX 那么通过 Web Workers 访问执行 UI 操作的 js 脚本是不可能的吗?在本地存储中缓存这些脚本怎么样?
-
@koolness 是的,全局作用域与窗口是分开的,所以你无法访问 web worker 中的 DOM。
标签: javascript jquery flash youtube web-worker