javascript - 如果它在 svg 中,如何在 JS 中获取 img src?
问题描述
我正在创建在线应用程序,我想在 js 中弄清楚我有什么图像来源 - png 或 svg。
我正在创建 img 标签:
var url; //url to icon without extension, like `/img/icon`
var img = new Image();
img.crossOrigin = 'Anonymous';
img.onload = function () {
//Here I want to know if src was png or svg
};
img.onerror = function () {
};
img.src = url;
如果 svg 可用,则服务器为 url 提供 svg,如果 svg 不可用,则为 png。
当提供 svg 时,我可以在网络选项卡中看到,因此也应该有一种方法可以在 js 中获取此信息。或者至少要了解该图像是 svg 格式的服务器。
我如何知道在图像的 onload 事件中收到的源格式是什么?
解决方案
您可以通过引用获取 src onLoad。然后拆分字符串并在末尾查找 svg 。
<img
src='www.awesomesite.com/awesomeImage.svg'
ref={el => this.imageRef = el}
onLoad={() => console.log(this.imageRef.src) }
/>
推荐阅读
- javascript - 根据电子主进程中生成的数据创建新窗口的内容
- django - 如何使我的数据库中的字符串显示在 Django 的本地化 .po 文件中?
- project-reactor - Mono.block() 或 Flux.block() 是阻塞线程(并使其等待)还是仅阻塞执行流并在反应弹簧中释放线程?
- python - ModuleNotFoundError:没有名为 'pyttsx3.drivers.sapi5 的模块
- python - 如何使用基于现有列的值将新列添加到现有 df 中?
- android - Android - 对齐 TableLayout 的列
- ios - DispatchGroup 不会等待函数完成
- javascript - 滚动出视口时暂停 wavesurfer
- flutter - Flutter:如何从缩短的 tiktok url 中提取用户帐户名和视频 ID?
- python - Pyqt5 中的 QShortcuts 即使不关注任何窗口也可以工作