- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在 Google Chrome 上使用 HTML5 视频标签编写视频播放器:我需要显示一些视频 (1),然后将它们从 DOM 文档中删除以显示其他视频,稍后再次创建一些指向相同视频标签的视频标签文件比 (1)。
我注意到有时视频在我第二次加载时没有显示,而是触发了“停滞”事件...我应该怎么做才能处理此事件并能够显示视频?如果我保留对第一个视频标签的引用然后稍后重用它,它就可以工作,但是保留对每个视频标签的引用可能会非常耗费内存!
最佳答案
如果浏览器一次尝试加载超过两三个视频,其中一些会停止。虽然 HTML5 video 提供了一种方法来告诉它开始加载视频,但没有办法告诉它停止。一旦你第一次开始播放它,只要它在内存中,它就会继续尝试加载更多数据,以防你决定再次开始播放它。而且它一次只会加载这么多视频,所以如果您仍在加载前三个视频,那么第四个视频将等待非常非常长的时间。
删除旧视频并稍后重新加载它们是正确的方法,但您需要非常彻底地让浏览器停止尝试加载它们。这是您需要做的。
// 1) Pause the video
oldVideo.pause();
// 2) Clear the video source URL
oldVideo.src = "";
// 3) Tell the video to start loading "nothing"
oldVideo.load();
最后一步很关键。即使您将 src
设置为空字符串,视频也会忽略它,直到您调用 load
。如果需要,您可以将它从 DOM 和任何数据结构中删除,以便它可以完全被垃圾收集。但即使您这样做,它也不会被垃圾回收,除非您清除 src
并调用 load
。
下次加载视频时,无论是通过创建新元素还是在同一元素上设置 src
,它都应该可以正常工作。
关于javascript - HTML5 视频 : stalled event,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28105950/
我正在测试新的 zgc包含在 java 中的垃圾收集器11 因为它 promise 非常低的延迟。我们的应用程序是一个实时服务,每秒创建和销毁许多对象,它使用 akka 在多线程环境中完成。 . 启用
自从我升级到新的 MBP 后,我在 R 中收到以下警告。当我启动应用程序并以奇怪的间隔重新出现时,会出现警告。 2016-12-06 15:05:02.067 R[87426:4480089] IMK
假设我有一个具有定义的宽度和高度的视口(viewport)。我克隆了右侧 View 之外的一个元素,然后随机将其飞过视口(viewport) y位置代码如下: ... .css({
当我运行 heroku pg:psql 我得到 --> Connecting to postgresql-cylindrical-38664 并停滞不前。一切看起来都很好,只是卡住了,什么也没做。 最
我正在 Google Chrome 上使用 HTML5 视频标签编写视频播放器:我需要显示一些视频 (1),然后将它们从 DOM 文档中删除以显示其他视频,稍后再次创建一些指向相同视频标签的视频标签文
我在 FastCGI 模式下运行带有 HHVM 3.5.0 的 NGINX 1.2.1。 正如标题所说,在我执行以下操作后,Chrome 会“暂停”请求很长时间: 打开我的网站(只需大约 1.5 秒)
我正在与Tokio一起运行一款铁锈应用程序。在上一个版本中,我有一个错误,一些请求导致我的代码进入无限循环。。发生的情况是,当进入循环的任务陷入停滞时,所有其他任务继续正常工作并处理请求,直到停止任务
我开始注意到发送到我们的应用程序服务器的 post 请求在浏览器端停滞了大约 7 秒,没有明显的原因。 环境: Angular 1.4 Play Framework Chrome 64。* 服务器发送
在我的智能电视应用程序中,我通过跨域请求使用 SoundCloud API - $.getJSON() 等 该应用程序还在 100% HTML5 模式(无 Flash)上使用 SoundManager
我在 chrome 中有以下网络登录: 里面有一件事我不明白:实心灰条和透明灰条有什么区别。 最佳答案 Google 在 Evaluating network performance 中对这些字段进行
我正在开发一个 Java 应用程序,它应该向我们的远程计算机发送一个特定文件。我正在使用 Jsch 库,并遵循网站 @ ( http://www.jcraft.com/jsch/examples/Sc
我正在尝试编写一个使用 [SoundManager 2][1] api 的 javascript 应用程序并旨在运行所有桌面和移动浏览器。在 iPad 平台上,Soundmanager 使用 HTML
我正在使用 Spring Boot 创建一个 Spring Integration 原型(prototype)。 我有一个“集线器”,它接受控制台输入并将其发送到单独的套接字/tcp 应用程序。 tc
在尝试发送 mp3 数据时,我们遇到了一个非常烦人的错误。我们有以下设置。 网络摄像头生成 aac -> ffmpeg 转换为 adts -> 发送到 nodejs 服务器 -> 服务器上的 ffmp
我的 Emacs(Windows 10 64 位下的 GNU Emacs 25.1.1 (x86_64-w64-mingw32))变得非常缓慢和不稳定,尤其是在 Org 模式下,例如可能会暂停 2 秒
我对此非常陌生,所以如果我问的是一个愚蠢的问题,我提前道歉。此外,如果可能的话,最可取的是一个非常简单的答案。 使用 mac osx 10.8.4,安装了 PostgreSQL 9.2.4 和带有自制
我正在尝试解决 Google CodeJam 2017 "Bathroom Stalls" problem C - 链接中提供了解决方案,下面我的 C# 代码在 small1 和 2 集上运行良好。大
运行 perf stat ls 显示: Performance counter stats for 'ls': 1.388670 task-clock
我制作、训练并保存了一个简单的 tf.keras 模型。然后,我通过 Flask、redis 和 rq 设置了一个基于任务的基本 API。 它的工作原理基本上是这样的: 使用输入调用 api 任务(使
我试图了解如何衡量性能并决定编写非常简单的程序: section .text global _start _start: mov rax, 60 syscall 然后我用 pe
我是一名优秀的程序员,十分优秀!