JavascriptJquery实现页面图片预加载百分比展现_第1页
JavascriptJquery实现页面图片预加载百分比展现_第2页
JavascriptJquery实现页面图片预加载百分比展现_第3页
JavascriptJquery实现页面图片预加载百分比展现_第4页
JavascriptJquery实现页面图片预加载百分比展现_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Javascript,Jquery实现页面图片预加载百分比展现如果需要在页面初始加载时显示加载进度。主要是指图片很多的情况下:可以使用第三方Jquery插件jquery.imgpreload.min.js调用里面的方法:imgpreload即可,实例如下:var imgNum = 0;var images = ;$(function() preloadImg(); );/里面有两种方式function preLoadImg() /第一种方式:通过dom方法获取页面中的所有img,包括标签和css中的background-image /*get all imgs those tag is var

2、 imgs = document.images; for (var i = 0; i imgs.length; i+) images.push(imgsi.src); /get all images in style var cssImages = getallBgimages(); for (var j = 0; j cssImages.length; j+) images.push(cssImagesj); */ /第二种方式:把所有该网页上用到的图片文件都预先放入一个数组里 $.imgpreload(images/bg1.jpg, images/bg2.jpg, function ()

3、/此处是显示进度百分比时需要用到的背景图,这个可以先加载进去 ); /then push all other images in array to load images.push(images/test_1.png); images.push(images/test_2.png); images.push(images/test_3.png); /。 images.push(images/test_n.png); /*这里是真正的图片预加载 preload*/ $.imgpreload(images, each: function () /*this will be called after

4、 each image loaded*/ var status = $(this).data(loaded) ? success : error; if (status = success) var v = (parseFloat(+imgNum) / images.length).toFixed(2); $(#percentShow).html(Math.round(v * 100) + %); , all: function () /*this will be called after all images loaded*/ $(#percentShow).html(100%); $(pe

5、rcentShow).fadeOut(1000); $(.main).show(); );/get all images in style(此方法引用其他博客的)function getallBgimages() var url, B = , A = document.getElementsByTagName(*); A = B.slice.call(A, 0, A.length); while (A.length) url = document.deepCss(A.shift(), background-image); if (url) url = /url(?()+)/.exec(url)

6、 | ; url = url1; if (url & B.indexOf(url) = -1) BB.length = url; return B;document.deepCss = function (who, css) if (!who | !who.style) return ; var sty = css.replace(/-(a-z)/g, function (a, b) return b.toUpperCase(); ); if (who.currentStyle) return who.stylesty | who.currentStylesty | ; var dv = do

7、cument.defaultView | window; return who.stylesty | dv.getComputedStyle(who, ).getPropertyValue(css) | ;Atotype.indexOf = Atotype.indexOf |function (what, index) index = index | 0; var L = this.length; while (index L) if (thisindex = what) return index; +index; return -1;这样就能在页面图片很多,且

8、网速很慢的情况下给予用户一个百分比提示。在做这个之前,由于每次本地测试加载都很快,百分比瞬间到100%然后消失,为了看上去有那么一回事,我还写了一个伪百分比进度条,仅供玩耍:var t = window.setTimeout(preLoad(), 100); function preLoad() $(#loading div).animate( width: step + px , 50).text(step + %); step += 1; if (step = 100) t = window.setTimeout(preLoad(), 100); else clearTimeout(t); $(#loading).fadeOut(1000); $(#pre

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论