如何测试URL是否是有效图像(在javascript中)?

Pau*_*jan 5 javascript forms image

提交表单时,我想确保字段是有效的图像URL.

我可以在我的服务器上创建一个AJAX端点CURLs URL并用图像库解析输出,但这感觉有点过分.

我能不能制作一个<img>元素然后以某种方式同步检查响应?

SLa*_*aks 12

您可以创建一个<img>元素并处理它onerroronload事件.

如果load事件触发,则为有效图像; 如果error事件触发,则不是.
这甚至适用于各个领域.


min*_*eow 5

这样做,下面的代码将用默认图像替换所有非图像。

<img src="xx" onerror="this.src = '/images/default.png'">
Run Code Online (Sandbox Code Playgroud)