我已经通过Google和Stack Overflow搜索栏对此进行了一些搜索,并且没有任何相关信息显示出来。我甚至不确定这是否可行,所以如果不是,请告诉我。我正在寻找的是为图标设置两个可能的文件路径(SVG文件)的方法,这样如果图像不在第一个文件路径/位置,它将尝试第二个。我有一个像这样的对象:
this.bookmarkButtonConfig = {
"oc-control": "BookmarkButton",
"label": "BookmarkButton",
"group": "primary",
"action": "onBookmark",
"buttonType": "toggle",
"image": "$MODULE_PATH/images/favorite-icon.svg"
}
然后所有这些属性都被其他东西读取并根据所述属性配置按钮,但这对此并不重要。有没有办法可以设置"image"
以便它在一个文件路径中查找图标,然后如果它不存在,它会尝试第二个文件路径?是否有某种功能或方法可以做到这一点?
感谢您的帮助!
答案 0 :(得分:0)
是的,您可以使用AJAX调用来检查服务器中是否存在该图像, 首先写这个函数:
function imageExists(url){
var http = new XMLHttpRequest();
http.open('HEAD', image_url, false);
http.send();
return http.status != 404;
}
然后根据结果分配网址:
var src = imageExists(the first url) ? "the first url" : "the second url";