jquery.scrollLoading.js内容(异步加载图片)
2016-03-22 20:13
731 查看
原文地址:http://blog.sina.com.cn/s/blog_78106bb10101cjw1.html
首先引用jquery.scrollLoading.js(上一篇博文有)和jquery.js
把下面代码放到标签里,就会得到异步加载图片的效果
//这个在我上一篇博文有这个
$(document).ready(function () {
//实现图片慢慢浮现出来的效果
$("img").load(function ()
{
//图片默认隐藏
$(this).hide();
//使用fadeIn特效
$(this).fadeIn("5000");
});
// 异步加载图片,实现逐屏加载图片
$(".scrollLoading").scrollLoading();
});
注意img里的class,在这里就不细说了
data-url表示将要异步加载的图片,src表示首先加载的图片(一般会是小图片,或者是一个动画,网页中全部的src链接同一个图片,这样网页就加载快好多,这个时候再异步的加载要加载的图片,也就现在要说的功能)
<img class="scrollLoading" data-url="image/logo.jpg" src="/Images/120.gif" />
=====================================================================================
(2013-03-07 21:25:33)
(function ($) {
// alert($.fn.scrollLoading);
$.fn.scrollLoading = function (options) {
var defaults = {
attr: "data-url"
};
var params = $.extend({}, defaults, options || {});
params.cache = [];
$(this).each(function () {
var node = this.nodeName.toLowerCase(), url = $(this).attr(params["attr"]);
if (!url) { return; }
var data = {
obj: $(this),
tag: node,
url: url
};
params.cache.push(data);
});
var loading = function () {
var st = $(window).scrollTop(), sth = st + $(window).height();
$.each(params.cache, function (i, data) {
var o = data.obj, tag = data.tag, url = data.url;
if (o) {
post = o.position().top; posb = post + o.height();
if ((post > st && post < sth) || (posb > st && posb < sth)) {
if (tag === "img") {
o.attr("src", url);
} else {
o.load(url);
}
data.obj = null;
}
}
});
return false;
};
loading();
$(window).bind("scroll", loading);
};
})(jQuery);
首先引用jquery.scrollLoading.js(上一篇博文有)和jquery.js
把下面代码放到标签里,就会得到异步加载图片的效果
//这个在我上一篇博文有这个
$(document).ready(function () {
//实现图片慢慢浮现出来的效果
$("img").load(function ()
{
//图片默认隐藏
$(this).hide();
//使用fadeIn特效
$(this).fadeIn("5000");
});
// 异步加载图片,实现逐屏加载图片
$(".scrollLoading").scrollLoading();
});
注意img里的class,在这里就不细说了
data-url表示将要异步加载的图片,src表示首先加载的图片(一般会是小图片,或者是一个动画,网页中全部的src链接同一个图片,这样网页就加载快好多,这个时候再异步的加载要加载的图片,也就现在要说的功能)
<img class="scrollLoading" data-url="image/logo.jpg" src="/Images/120.gif" />
=====================================================================================
jquery.scrollLoading.js内容(异步加载图片)
(2013-03-07 21:25:33)(function ($) {
// alert($.fn.scrollLoading);
$.fn.scrollLoading = function (options) {
var defaults = {
attr: "data-url"
};
var params = $.extend({}, defaults, options || {});
params.cache = [];
$(this).each(function () {
var node = this.nodeName.toLowerCase(), url = $(this).attr(params["attr"]);
if (!url) { return; }
var data = {
obj: $(this),
tag: node,
url: url
};
params.cache.push(data);
});
var loading = function () {
var st = $(window).scrollTop(), sth = st + $(window).height();
$.each(params.cache, function (i, data) {
var o = data.obj, tag = data.tag, url = data.url;
if (o) {
post = o.position().top; posb = post + o.height();
if ((post > st && post < sth) || (posb > st && posb < sth)) {
if (tag === "img") {
o.attr("src", url);
} else {
o.load(url);
}
data.obj = null;
}
}
});
return false;
};
loading();
$(window).bind("scroll", loading);
};
})(jQuery);
相关文章推荐
- 【深入浅出jQuery】源码浅析2--奇技淫巧
- JQuery bind
- jQuery自定义滚动条样式插件mCustomScrollbar
- 利用js、jQuery和css实现环形进度条组件封装
- 11、JQuery知识点总结
- jquery导航二级栏目下拉
- jQuery事件
- jquery easyui 的datagrid,页面获取不显示在页面的参数字段
- JQuery监听组合按键
- jquery easyuid的subgrid子表点击一行的某个字段,不能首次获取到值(解决办法)
- jquery 获取url参数插件实例代码
- jquery的ajax()函数传值中文乱码解决方法介绍
- jquery.validata1.11怎么支持metadata
- 图片按钮来代替文件上传控件(Freemaker,JQuery,HTML,CSS,JavaScript)
- 基于jquery实现无限级树形菜单
- jQuery 验证实例(shopnc二次开发)
- jQuery插件开发
- jQuery中Ajax事件beforesend及各参数含义1
- jQuery中Ajax事件beforesend及各参数含义
- jQuery之bind()、live()和delegate()的小结