我会在这里指出很多事情。
我觉得你的代码没问题
setTimeout
递归调用而不是一个
setInterval
重复它的动作。
文件缓存
您的问题可能是浏览器的缓存,因为您一直使用相同的映像名和目录。浏览器比较文件名和目录,并决定从其缓存中加载它,否则它将从服务器请求它。在这种特殊情况下,可以使用不同的技巧从服务器重新加载图像。
-
为动态加载的歌曲使用不同的文件名/目录
-
使用随机get查询(例如
image.png?v=current timestamp
)
你的转换方法
你用ftp替换文件,我不建议这样做。也许你应该把所有的相册和缩略图上传到服务器上,并使用不同的动态切换以提高效率和减少错误倾向,这将帮助你更好地实现上一节中的方法1。
不断刷新加载
我想强调的是,如果您使用的是基于事件的nodejs或nginx服务器,您可以用更少的流量实现相同的功能。您不需要刷新方法,因为这些服务器实际上可以将特定事件的数据发送到浏览器,告诉它在此时加载特定资源。此操作不需要持续刷新。
你考虑过你的选择,我尽量做到全面