问题
经常遇到图片加载不上的问题,一般解决这个问题的方式就是给image
绑定error
事件,当图片加载出错,触发该事件,然后给image重新指定一个通用图片:
解决
|
|
更简短的方式:
|
|
有个地方值得注意:当触发错误事件时,首先要做的就是清楚错误事件image.onerror = "";
,否则万一后面重新指定图片时,依然报错,就会陷入死循环,直接stack overflow了。
更好的方式(jQuery)
以上方式虽然精简,但并不提倡将绑定事件混合在HTML结构中,所以我们用jQuery重新实现一下:
|
|
jQuery还有个API:.one,也就是给元素绑定只触发一次的事件,非常适合干这事儿:
|
|