我需要做的很简单,但(对我来说)很难做到:
使用javascript,给定一个图像名称,即“image01.jpg”,我需要检查这个图像是否存在于某个文件夹或路径中(本地或网络上).如果该文件夹下不存在该图像,我需要检查另一个文件夹中是否存在相同的图像.
例如,使用伪代码
imagetoFind = 'image01.jpg' path1 = 'users/john/images' path2 = 'users/mike/img' if path1+'/'+imagetoFind exists //do something else if path2+'/'+imagetoFind exists //do something else print('NOT FOUND')
你建议采用什么样的方法?我首先尝试使用ajax实现这一点,然后使用javascript的Image(),但在这两种情况下我都失败了.
在此先感谢任何帮助,最好的问候
解决方法
您几乎可以依赖为Image节点触发的本机onload和onerror事件处理程序.所以它看起来像
var images = ['users/john/images/image01.jpg','users/mike/img/image01.jpg','some/more/path/image01.jpg']; (function _load( img ) { var loadImage = new Image(); loadImage.onerror = function() { // image Could not get loaded,try next one in list _load( images.shift() ); }; loadImage.onload = function() { // this image was loaded successfully,do something with it }; loadImage.src = img; }( images.shift() ));
此代码可能比您实际要求的更多.您可以基本上将所需的图像路径添加到该数组中,该脚本将搜索列表,直到它可以成功加载一个图像.
原文地址:https://www.jb51.cc/js/150439.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。