如何在从数据库异步加载一个占位符代替不存在的图像(How to replace nonexisten

2019-09-16 15:51发布

我有我需要在即时每个用户的请求加载图像的数据库。 这些图像将作为走在涵盖的div容器的单独的背景图片...类似图片滚动。

该数据库目前是本地数据库,但是这不是我的问题。

问题是,数据库可能没有,我已经要求所有图像...我可能会是不存在的一个或更多图片...既然东西都放在数据库前面和加载图像前为异步好了,我不知道如何去与标准图像占位符代替一个不存在的图像。 由于装载甚至发生之前执行办法,我不能这样做在飞行中循环。 我尝试使用.Load和.error,但我不知道我怎么能做到这一点的背景图像上。

有没有解决这个问题..最好不用插件,因为我有很多的是一个标准的,简单的方法...

Answer 1:

看来我无法从另外创建DOM ELEM脱身。 这就是我现在使用:

<div style="background:url(providerSrc)">
<img
     style="display:none" 
       src="providerSrc"
   onerror="this.parentNode.style.backgroundImage='url(fallbackSrc)'"  
   />
</div>

这是摘自: http://www.daveoncode.com/2010/08/20/image-background-fallback-img-tag-error-handlers/

如果你知道“好”解决方案的请回复



Answer 2:

如果你把占位符的背景图像的原始图像的背后? 如果图像存在,它将覆盖占位符。 如果没有,那么没有覆盖占位符,这将是可见的。



文章来源: How to replace nonexistent images with a placeholder in asynchronous loading from database