我有一个网页,你上传视频,然后这些视频被编码(很像Youtube)。编码部分可能需要一些时间,如果编码是通过定期从页面内轮询编码状态来完成的,我想要自动向用户显示。如果编码完成了,我想用" play“按钮替换编码图标,这样用户就可以播放视频了。
由于上传视频本身的列表是使用AJAX (使用jQuery)放到DOM中的,所以我很难了解如何做到这一点。我想为此使用jQuery,但我不知道jQuery是否能做到这一点。
因此,步骤如下
我的问题只是在第4步,服务器端部分也完成了。
发布于 2009-10-26 17:30:06
如果问题是您不知道如何让页面每X秒轮询一次服务器,那么您可以使用setTimeout(函数,毫秒)和setInterval(函数,毫秒)对javascript进行轮询。将轮询代码放入函数的定义中。
这是一个包含详细信息的文章。
发布于 2009-10-26 17:23:10
使用轮询。设置间隔,每隔几秒钟轮询服务器(使用AJAX),以检查编码作业的状态。当服务器用“作业完成”进行响应时,更新DOM中的图标。
如果是我,我将让服务器端处理程序以完成的百分比进行响应(如果可能的话,它将取决于您的编码API)。
发布于 2009-10-28 15:55:00
谢谢你对setInterval的回答,这对我半途而废非常有帮助。
jQuery的.get()调用的异步性质(我在函数中调用了这些调用)出现了另一个问题,然后根据.get()调用的结果,应该返回true/false。至少就我所发现的情况而言,如果调用异步函数,这是行不通的。这个异步函数可以调用另一个函数,我用它来修改DOM。
我对这个问题的最后解决办法如下。这有点麻烦,而且Javascript没有优雅地退化,但是代码是为原型系统编写的,并且只能在少数几台计算机的受控环境中使用,这样Javascript就可以使用了。
关于我的代码:我总是显示编码图标和播放图标,但是隐藏不相关的图标。播放图标是可点击的,并提供一个弹出与视频。
我的解决方案见巴斯泰宾。
https://stackoverflow.com/questions/1626056
复制相似问题