首页 > 语言 > JavaScript > 正文

js去除浏览器默认底图的方法

2024-05-06 16:21:42
字体:
来源:转载
供稿:网友
这篇文章主要介绍了js去除浏览器默认底图的方法,可以实现图片loading预加载效果,非常具有实用价值,需要的朋友可以参考下
 

本文实例讲述了js去除浏览器默认底图的方法。分享给大家供大家参考。具体分析如下:

我们在设计一些图片比较多的网页时,为了增强用户体验,希望图片加载的时候有个loading动画效果,而不是由空白到一下子出来。

在zen cart的二次开发过程中同样也遇到了这个问题,下面是我的解决方案。

首页给图片设置一个默认的loading动画,再分配一个id,
如<img  id="loading1″  src="loading.gif">实际上加载过程通过一个函数来完成
 

  1. function addListener(element, type, expression, bubbling) { 
  2.  bubbling = bubbling || false
  3.  if(window.addEventListener) { // Standard 
  4.  element.addEventListener(type, expression, bubbling); 
  5.  return true
  6.  }  
  7.  else if(window.attachEvent) { // IE 
  8.  element.attachEvent('on' + type, expression); 
  9.  return true
  10.  }  
  11.  else return false
  12. var ImageLoader = function(url){ 
  13.  this.url = url; 
  14.  this.image = null
  15.  this.loadEvent = null
  16. }; 
  17. ImageLoader.prototype = { 
  18.  load:function(){ 
  19.  this.image = document.createElement_x('img'); 
  20.  var url = this.url; 
  21.  var image = this.image; 
  22.  var loadEvent = this.loadEvent; 
  23.  addListener(this.image, 'load'function(e) { 
  24.   if(loadEvent != null){ 
  25.   loadEvent(url, image); 
  26.   } 
  27.  }, false); 
  28.  this.image.src = this.url; 
  29.  }, 
  30.  getImage:function(){ 
  31.  return this.image; 
  32.  } 
  33. }; 
  34. function loadImage(objId,urls) { 
  35.  var loader = new ImageLoader(urls); 
  36.  loader.loadEvent = function(url){ 
  37.  obj = document.getElementByIdx_x(objId); 
  38.  obj.src = url; 
  39.  } 
  40.  loader.load(); 
?
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表