吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1127|回复: 9
收起左侧

[求助] 问一个JS命令的逻辑关系问题

[复制链接]
yuandeabc 发表于 2022-5-23 09:11
        有一个视频播放网页,我想让控制台每间隔一段时间,自动输出视频播放进度。我开始用的是setInterval命令,马上报错,提示说是视频时间那个参数没有取到。这个也好理解,视频都没开始播放,命令就已经执行,报错也正常。然后我就想用setInterval命令外面套层setTimeout命令,意思是一段时间之后,开始循环输出视频播放时间。结果发现仅仅执行了一次输出视频播放时间,就没有再输出播放时间了。
我的代码大体上就是这样了setTimeout(()=>{setInterval(bofangshijian(),30000);},10000); 请问这个问题怎么解决?

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

ryosga 发表于 2022-5-23 09:16
看起来逻辑上没啥问题, 会不会是bofangshijian函数内部实现的问题
 楼主| yuandeabc 发表于 2022-5-23 09:22
ryosga 发表于 2022-5-23 09:16
看起来逻辑上没啥问题, 会不会是bofangshijian函数内部实现的问题

我也怀疑这个问题,所以我删除了function bofangshijian()中所有的内容,仅仅保留一个命令,console.log("正在监测视频是否播完")。但是,执行后,控制台仅仅输出一次,就没有再输出了。
image.png
junyo 发表于 2022-5-23 09:23
[JavaScript] 纯文本查看 复制代码
setTimeout(()=>{setInterval(bofangshijian,30000);},10000);  

这样试试?
lcbreak 发表于 2022-5-23 09:30
一般播放器在视频没播放时理论上应该也能取到当前进度时间(为0);
视频你是用的第三方插件,还是原生的video?
一般插件或者原生都会提供相应的api,可以在视频播放时/时间更新时再调用获取当前时间函数,楼主最好还是贴上代码比看看。
HappyCrazy 发表于 2022-5-23 09:31
[JavaScript] 纯文本查看 复制代码
setTimeout(()=>{setInterval(()=>{console.log(2222222)},1000)},1000);
 楼主| yuandeabc 发表于 2022-5-23 09:33
junyo 发表于 2022-5-23 09:23
[mw_shl_code=javascript,true]setTimeout(()=>{setInterval(bofangshijian,30000);},10000);  [/mw_shl_co ...

非常感谢,你的这段代码完美执行了我的目的。原来,我多写了一个括号
zzp007 发表于 2022-5-23 09:36
不谈需求,楼上的几个大哥已经指出你的语法问题了
 楼主| yuandeabc 发表于 2022-5-23 09:39
zzp007 发表于 2022-5-23 09:36
不谈需求,楼上的几个大哥已经指出你的语法问题了

嗯嗯,感谢楼上各位大哥的帮助!
junyo 发表于 2022-5-23 09:42
yuandeabc 发表于 2022-5-23 09:33
非常感谢,你的这段代码完美执行了我的目的。原来,我多写了一个括号

哈哈,可以就行了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 11:37

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表