Javascript Videojs上的奇怪bug

Javascript Videojs上的奇怪bug,javascript,jquery,html,jscript,Javascript,Jquery,Html,Jscript,我不知道这是怎么发生的,也看不到任何错误。 第二次打开页面时,我似乎无法浏览视频 请参见此处的屏幕截图: 我发现了这个错误,上面写着 TypeError: Floating-point value is not finite. "Video is not ready. (Video.js)" 非常感谢您的帮助 谢谢您是使用服务器执行它还是在本地运行它。因为我在本地运行时遇到了一些类似的问题。但是当我把文件放在一些服务器上,比如tomcat或iis,或者任何它能工作的服务器上。关于这个问题我不太

我不知道这是怎么发生的,也看不到任何错误。 第二次打开页面时,我似乎无法浏览视频

请参见此处的屏幕截图:

我发现了这个错误,上面写着

TypeError: Floating-point value is not finite.
"Video is not ready. (Video.js)"
非常感谢您的帮助


谢谢

您是使用服务器执行它还是在本地运行它。因为我在本地运行时遇到了一些类似的问题。但是当我把文件放在一些服务器上,比如tomcat或iis,或者任何它能工作的服务器上。关于这个问题我不太清楚,当你说“我第二次打开页面时,似乎无法浏览视频”时,只是一个猜测?你是说你根本不能播放视频,还是说你不能在播放的视频中快进快退

您得到一个
类型错误:浮点值不是有限的
错误意味着您提供给video.js的某个参数的类型错误。也就是说,当video.js需要整数(或类似的东西)时,您可能需要提供一个字符串

因为它在您第一次加载页面时起作用,所以您是否尝试从导航离开页面时停止的位置恢复播放

如果是这种情况,您可能将
currentTime
参数存储在
cookie
localStorage
值中作为字符串(例如使用jQuery cookie,这些cookie通常会自动字符串化),并且在需要video.js读回时忘记将其切换回int。因为我注意到你的截图似乎video.js不知道你的视频的持续时间(即搜索时间为0:31/0:00)

以下是您应该做的:

清除缓存以获得可工作的首次播放器加载,然后:

在开始播放之前、播放结束之后以及播放期间,您应该记录当前播放时间签名,即:
console.log(videojs(“视频id”).currentTime())

向这些video.js事件回调添加时间签名
console.logs()
,应该可以帮助您:

  • (如果视频的总持续时间发生变化,则触发)
  • (告诉您视频的持续时间。在视频工作时尝试记录,在停止工作后再次记录,并查看值中的更改)
  • 如果仍然有问题,请尝试使用video js回调记录值。当当前播放位置发生更改时(可以是每秒几次)调用此事件。如果所有其他操作都失败,则此回调可能会让您了解获取无效类型值的确切时间,但如果您在尝试从
    .currentTime()恢复播放时遇到问题,则此回调不会对您有所帮助
    从存储在用户
    cookie
    /
    会话存储中的不正确类型读取值
    /
    本地存储

嗨,Shiro,理解你的问题有点笨拙!请你解释一下!你需要什么,确切的问题是什么?这就是问题所在。您可能为video.js API提供了一个不正确的参数(我不能肯定这一点,因为您没有提供任何源代码)。请检查您的方法签名并重试。我怀疑Brian是正确的,但如果您在jsfiddle.net或jsbin.com上发布了一个实时示例后仍有问题,我会看一看。您是否尝试将此代码保留在tomcat、IIS等服务器上,而不是在本地驱动器上运行。我们需要知道,如何调用setCurrentTime方法以及作为参数传递的内容。由于类型错误的定义如下所示,因此您肯定传递了错误类型的参数:“TypeError:表示值不是预期类型时的错误。”(MSDN)