这是我的图片标记。图像是从数据库动态生成的图形。涉及的数据量可能会有很大差异。有时它会在不到一秒的时间内加载,有时它会在最多6到7秒内加载,直到返回并显示图形图像。我想要做的是显示一个简单的占位符gif,直到加载的实际图像。
<img src="@Url.Action("Graph", new { id = Model.ID })" alt="Graph is Loading..." />
答案 0 :(得分:3)
完全忽略你的ASP,你可以添加加载器作为源和真实图像作为数据属性的元素,然后用javascript加载图像,并在加载真实图像后交换图像:
<img src="loader.gif" data-src="/images/menubar.png" />
JS预加载
$('img').each(function() {
var self = this,
src = $(self).data('src'), // get the data attribute
img = new Image(); // create a new image
img.onload = function() { // onload
self.src = this.src; // swap the source
}
img.src = src; // set source of new image
if (this.complete) $(this).load();
});