本文实例讲述了js去除浏览器默认底图的方法。分享给大家供大家参考。具体分析如下:
我们在设计一些图片比较多的网页时,为了增强用户体验,希望图片加载的时候有个loading动画效果,而不是由空白到一下子出来。
在zen cart的二次开发过程中同样也遇到了这个问题,下面是我的解决方案。
首页给图片设置一个默认的loading动画,再分配一个id,
如<img id="loading1″ src="loading.gif">实际上加载过程通过一个函数来完成
- function addListener(element, type, expression, bubbling) {
- bubbling = bubbling || false;
- if(window.addEventListener) { // Standard
- element.addEventListener(type, expression, bubbling);
- return true;
- }
- else if(window.attachEvent) { // IE
- element.attachEvent('on' + type, expression);
- return true;
- }
- else return false;
- }
- var ImageLoader = function(url){
- this.url = url;
- this.image = null;
- this.loadEvent = null;
- };
- ImageLoader.prototype = {
- load:function(){
- this.image = document.createElement_x('img');
- var url = this.url;
- var image = this.image;
- var loadEvent = this.loadEvent;
- addListener(this.image, 'load', function(e) {
- if(loadEvent != null){
- loadEvent(url, image);
- }
- }, false);
- this.image.src = this.url;
- },
- getImage:function(){
- return this.image;
- }
- };
- function loadImage(objId,urls) {
- var loader = new ImageLoader(urls);
- loader.loadEvent = function(url){
- obj = document.getElementByIdx_x(objId);
- obj.src = url;
- }
- loader.load();
- }
新闻热点
疑难解答
图片精选