jquery 图片加载效果代码

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=gb2312" />
<title>jquery 图片加载效果代码</title>
<script language="网页特效">
var static_path = (location.protocol=='https教程:')?'https://image.111cn.net/':'image://www.111cn.net/';

jquery.fn.loadingimg = function(url) {
var obj = this;
var img = new image(); //new img obj
img.src = url;    //set src either absolute or rel to css教程 dir
var w = jquery(obj).attr('width');
var h = jquery(obj).attr('height');

jquery(obj).attr({'src':static_path+'/includes/templates/dev_v2/css/images/imgbox/s.gif','width':w,'height':h});

$(obj).css('background', 'url('+static_path+'/includes/templates/dev_v2/css/images/imgbox/loading_img_s.gif) 50% 50% no-repeat');
//msie or not
if(!img.complete){
jquery(img).bind('error load onreadystatechange', function(){jquery(obj).attr('src',url);});
//jquery(img).bind('load', function(){jquery(obj).attr('src',url);});
} else {
jquery(obj).attr('src',url);
}
}
</script>
</head>

<body>
</body>
</html>

代码二

<!doctype html public "-//w3c//dtd xhtml 1.0 strict//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en-us">
<head profile="http://gmpg.org/xfn/11">
 <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
 <title>gaya design - query loader</title>
 
 <link rel="stylesheet" href="css/style.css" type="text/css" />
 <script type='text/javascript' src=https://yunqi-tech.oss-cn-hangzhou.aliyuncs.com/notfound.jpg /><br />
   <img src='images/2.jpg' /><br />
   <p>
    <img src='images/3.jpg' />
    <p>
     <img src='images/4.jpg' />
    </p>
   </p>
  </p>
 </div>
 
 <script>
  queryloader.selectorpreload = "body";
  queryloader.init();
 </script>
 
</body>
</html>

jquery插件代码

var queryloader = {
 overlay: "",
 loadbar: "",
 preloader: "",
 items: new array(),
 donestatus: 0,
 donenow: 0,
 selectorpreload: "body",
 ieloadfixtime: 2000,
 ietimeout: "",
  
 init: function() {
  if (navigator.useragent.match(/msie (d+(?:.d+)+(?:bd*)?)/) == "msie 6.0,6.0") {
   //break if ie6   
   return false;
  }
  if (queryloader.selectorpreload == "body") {
   queryloader.spawnloader();
   queryloader.getimages(queryloader.selectorpreload);
   queryloader.createpreloading();
  } else {
   $(document).ready(function() {
    queryloader.spawnloader();
    queryloader.getimages(queryloader.selectorpreload);
    queryloader.createpreloading();
   });
  }
  
  //help ie drown if it is trying to die :)
  queryloader.ietimeout = settimeout("queryloader.ieloadfix()", queryloader.ieloadfixtime);
 },
 
 ieloadfix: function() {
  var ie = navigator.useragent.match(/msie (d+(?:.d+)+(?:bd*)?)/);
  if (ie[0].match("msie")) {
   while ((100 / queryloader.donestatus) * queryloader.donenow < 100) {
    queryloader.imgcallback();
   }
  }
 },
 
 imgcallback: function() {
  queryloader.donenow ++;
  queryloader.animateloader();
 },
 
 getimages: function(selector) {
  var everything = $(selector).find("*:not(script)").each(function() {
   var url = "";
   
   if ($(this).css("background-image") != "none") {
    var url = $(this).css("background-image");
   } else if (typeof($(this).attr("src")) != "undefined" && $(this).attr("tagname").tolowercase() == "img") {
    var url = $(this).attr("src");
   }
   
   url = url.replace("url("", "");
   url = url.replace("url(", "");
   url = url.replace("")", "");
   url = url.replace(")", "");
   
   if (url.length > 0) {
    queryloader.items.push(url);
   }
  });
 },
 
 createpreloading: function() {
  queryloader.preloader = $("<div></div>").appendto(queryloader.selectorpreload);
  $(queryloader.preloader).css({
   height:  "0px",
   width:  "0px",
   overflow: "hidden"
  });
  
  var length = queryloader.items.length;
  queryloader.donestatus = length;
  
  for (var i = 0; i < length; i++) {
   var imgload = $("<img></img>");
   $(imgload).attr("src", queryloader.items[i]);
   $(imgload).unbind("load");
   $(imgload).bind("load", function() {
    queryloader.imgcallback();
   });
   $(imgload).appendto($(queryloader.preloader));
  }
 },

 spawnloader: function() {
  if (queryloader.selectorpreload == "body") {
   var height = $(window).height();
   var width = $(window).width();
   var position = "fixed";
  } else {
   var height = $(queryloader.selectorpreload).outerheight();
   var width = $(queryloader.selectorpreload).outerwidth();
   var position = "absolute";
  }
  var left = $(queryloader.selectorpreload).offset()['left'];
  var top = $(queryloader.selectorpreload).offset()['top'];
  
  queryloader.overlay = $("<div></div>").appendto($(queryloader.selectorpreload));
  $(queryloader.overlay).addclass("qoverlay");
  $(queryloader.overlay).css({
   position: position,
   top: top,
   left: left,
   width: width + "px",
   height: height + "px"
  });
  
  queryloader.loadbar = $("<div></div>").appendto($(queryloader.overlay));
  $(queryloader.loadbar).addclass("qloader");
  
  $(queryloader.loadbar).css({
   position: "relative",
   top: "50%",
   width: "0%"
  });
 },
 
 animateloader: function() {
  var perc = (100 / queryloader.donestatus) * queryloader.donenow;
  if (perc > 99) {
   $(queryloader.loadbar).stop().animate({
    width: perc + "%"
   }, 500, "linear", function() {
    queryloader.doneload();
   });
  } else {
   $(queryloader.loadbar).stop().animate({
    width: perc + "%"
   }, 500, "linear", function() { });
  }
 },
 
 doneload: function() {
  //prevent ie from calling the fix
  cleartimeout(queryloader.ietimeout);
  
  //determine the height of the preloader for the effect
  if (queryloader.selectorpreload == "body") {
   var height = $(window).height();
  } else {
   var height = $(queryloader.selectorpreload).outerheight();
  }
  
  //the end animation, adjust to your likings
  $(queryloader.loadbar).animate({
   height: height + "px",
   top: 0
  }, 500, "linear", function() {
   $(queryloader.overlay).fadeout(800);
   $(queryloader.preloader).remove();
  });
 }
}

时间: 2024-09-17 03:56:13

jquery 图片加载效果代码的相关文章

js图片加载效果代码

提示:您可以先修改部分代码再运行 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="zh-CN"><head

jQuery图片加载显示loading效果_jquery

在很多时候我们需要用到图片加载功能,在网上搜资料后就想为了以后使用方便重新整理了下,结果如图: 最后一张是加载失败显示的图片,没找到合适的图片,先用他顶替. 页面引用 <div class="container"> <div class="row block" id="img-list"> <div class="col-md-3"> <img src="/Assets/On

jquery 图片滚动切换效果代码

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.111cn.net/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="conte

iOS程序开发之使用PlaceholderImageView实现优雅的图片加载效果_IOS

说明 1. PlaceHolderImageView基于SDWebImage编写 2. 给定一个图片的urlString,以及一个placeholderImage就可以优雅的显示图片加载效果 效果 源码 PlaceholderImageView.h/.m // // PlaceholderImageView.h // SDWebImageViewPlaceHorder // // Created by YouXianMing on 16/9/14. // Copyright 2016年 YouX

java给图片加水印效果代码

以前用到的java给图片加水印效果代码都有些小问题,今天我们修正了里面的问题 增加了补白的功能 重构了代码 import java.awt.alphacomposite; import java.awt.color; import java.awt.font; import java.awt.graphics2d; import java.awt.image; import java.awt.geom.affinetransform; import java.awt.image.affinetr

jquery页面加载方法代码

一般的加载页面时调用js方法如下: window.onload = function() { $("table tr:nth-child(even)").addClass("even"); //这个是jquery代码 }; 这段代码会在整个页面的document全部加载完成以后执行.不幸的这种方式不仅要求页面的DOM tree全部加载完成,而且要求所有的外部图片和资源全部加载完成.更不幸的是,如果外部资源,例如图片需要很长时间来加载,那么这个js效果就会让用户感觉失

jquery图片滚动切换效果代码

html部份算是最简单的了,只要我们简单的写几下就可以了,主要还是在css和js部分了.  代码如下 复制代码 <div id="New_zlMimgMv"> <div class="imgMvBox"> <ul id="imgMvCon"> <li><a href="#" title=""><img src="New_zlimgM

jquery 图片幻灯片切换效果代码(1/2)

使用方法 1. 引入jquery库文件及jquery.ifadeslide.pack.网页特效插件文件(若页面有其他js文件,可与之合并以减小http请求),引入位置自定义; http://www.111cn.net 代码如下: <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script> <script src="js/jquery.i

js 图片加载效果

程序代码 var proMaxHeight = 40; var proMaxWidth  = 120; function proDownImage(ImgD){ var image=new Image(); image.src=ImgD.src; if(image.width>0 && image.height>0){ var rate = (proMaxWidth/image.width < proMaxHeight/image.height)?proMaxWidth/