Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 视频洗涤器拖动有问题_Javascript_Video_Html5 Video - Fatal编程技术网

Javascript 视频洗涤器拖动有问题

Javascript 视频洗涤器拖动有问题,javascript,video,html5-video,Javascript,Video,Html5 Video,我正在制作自定义视频播放器控件,并开始与洗涤器,然而,虽然我觉得我使用的方法是正确的,但它似乎是所有跳跃时,拖动洗涤器。我不知道它出了什么问题。所以我来这里是想看看是否有人能注意到任何错误 我当前的代码状态如下,谢谢 var video=document.getElementByIdvid; 功能洗涤器{ var scrubar=document.getElementByIdscrub\u bar; video.addEventListenertimeupdate,forNoOne; 函数fo

我正在制作自定义视频播放器控件,并开始与洗涤器,然而,虽然我觉得我使用的方法是正确的,但它似乎是所有跳跃时,拖动洗涤器。我不知道它出了什么问题。所以我来这里是想看看是否有人能注意到任何错误

我当前的代码状态如下,谢谢

var video=document.getElementByIdvid; 功能洗涤器{ var scrubar=document.getElementByIdscrub\u bar; video.addEventListenertimeupdate,forNoOne; 函数forNoOne{ var百分比=video.currentTime/video.duration; document.getElementByIdtime.innerHTML=video.currentTime; document.getElementByIddur.innerHTML=video.duration; scrawbar.style.width=百分比*100+%; } var-drag=false; document.addEventListenermousedown,函数E{ 阻力=真; UpdateScrubre.pageX; }; document.addEventListenermouseup,函数E{ 如果拖动{ 阻力=假; UpdateScrubre.pageX; } }; document.addEventListenermousemove,函数E{ 如果拖动{ UpdateScrubre.pageX; } }; 函数更新CRX{ var maxDuration=video.duration; var position=x-scrubar.offsetLeft; var百分比=100*位置/擦洗器偏移网络宽度; 如果百分比>100{ 百分比=100; } 如果百分比<0{ 百分比=0; } scrawbar.style.width=百分比+%; video.currentTime=最大持续时间*百分比/100; } } 刷子 容器{ 利润率:10px0; 宽度:853px; } 擦洗棒{ 宽度:100%; 高度:40px; 背景色:000; } 擦洗酒吧{ 位置:相对位置; 顶部:10px; 宽度:100%; 高度:20px; 背景色:红色; }


这是因为你的数学有点不对劲。在计算百分比时,您必须计算父容器的宽度,而不是随着视频的进行而动态变化的红框宽度。在这里,我为您固定了代码。现在试试

var video=document.getElementByIdvid; 功能洗涤器{ var scrubar=document.getElementByIdscrub\u bar; video.addEventListenertimeupdate,forNoOne; 函数forNoOne{ var百分比=video.currentTime/video.duration; document.getElementByIdtime.innerHTML=video.currentTime; document.getElementByIddur.innerHTML=video.duration; scrawbar.style.width=百分比*100+%; } var-drag=false; document.addEventListenermousedown,函数E{ 阻力=真; UpdateScrubre.pageX; }; document.addEventListenermouseup,函数E{ 如果拖动{ 阻力=假; UpdateScrubre.pageX; } }; document.addEventListenermousemove,函数E{ 如果拖动{ UpdateScrubre.pageX; } }; 函数更新CRX{ var maxDuration=video.duration; var position=x-scrubar.offsetLeft; var percentage=100*位置/文档.getElementById'scrub\u bar\u box'。offsetWidth; 如果百分比>100{ 百分比=100; } 如果百分比<0{ 百分比=0; } scrawbar.style.width=百分比+%; video.currentTime=最大持续时间*百分比/100; } } 刷子 容器{ 利润率:10px0; 宽度:853px; } 擦洗棒{ 宽度:100%; 高度:40px; 背景色:000; } 擦洗酒吧{ 位置:相对位置; 顶部:10px; 宽度:100%; 高度:20px; 背景色:红色; } .作为控制台包装{ 显示:无!重要; }


没有代码。@mehulmpt是的,正在处理这个问题。现在添加了代码。谢谢,在我感觉到这是数学问题之前,它是如何运行的,但找不到任何东西。谢谢你的帮助。