<!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">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>图片动态加载示例</title>
<style type="text/css">
img{border:0;}
a{cursor:pointer;color:#014ccc;text-decoration:underline;}
a:hover{text-decoration:none;}
.clear{clear:both;height:0px;overflow:hidden;}
.img_list{margin:0 auto;}
.img_list li{list-style:none}
.img_list .items{width:300px;margin:0 auto;}
.img_list .item{float:left;margin-bottom:5px;font-size:14px;}
.img_list .item .order{display:inline-block;*display:inline;*zoom:1;width:28px;color:#f30;}
.img_list .item .i_thumb{width:300px;height:280px;}
.img_list .item .i_title{width:100%;height:20px;}
.showmore{height:35px;background:#f8f8f8;border-bottom:1px solid #cccccc;cursor:pointer;tetx-align:center;margin-bottom:25px;}
.showmore .handle{display:block;height:35px;text-align:center;color:#909090;font-size:14px;text-decoration:none;line-height:35px;}
.showmore .handle:hover{text-decoration:none;background:#e6e6e6;}
</style>
<script type="text/javascript" src="images_test/jquery-1.4.4.min.js"></script>
</head>
<body>
<center><h1>图片动态加载示例</h1></center>
<div class="img_list" id="img_list">
<div class="items" id="items">
<ul class="item">
<li class="i_thumb"><a href="http://www.xuekaifa.com" target="_blank" title="初 私房"><img src="images_test/1.jpg" alt="初 私房" /></a></li>
<li class="i_title"><span class="order">1</span><a href="http://www.xuekaifa.com" target="_blank" title="初 私房">初 私房</a></li>
</ul>
<ul class="item">
<li class="i_thumb"><a href="http://www.xuekaifa.com" target="_blank" title="初 私房"><img src="images_test/2.jpg" alt="初 私房" /></a></li>
<li class="i_title"><span class="order">2</span><a href="http://www.xuekaifa.com" target="_blank" title="初 私房">初 私房</a></li>
</ul>
<ul class="item">
<li class="i_thumb"><a href="http://www.xuekaifa.com" target="_blank" title="初 私房"><img src="images_test/3.jpg" alt="初 私房" /></a></li>
<li class="i_title"><span class="order">3</span><a href="http://www.xuekaifa.com" target="_blank" title="初 私房">初 私房</a></li>
</ul>
<ul class="item">
<li class="i_thumb"><a href="http://www.xuekaifa.com" target="_blank" title="初 私房"><img src="images_test/4.jpg" alt="初 私房" /></a></li>
<li class="i_title"><span class="order">4</span><a href="http://www.xuekaifa.com" target="_blank" title="初 私房">初 私房</a></li>
</ul>
<div class="clear"></div>
</div>
<div class="showmore" id="showmore" ><a class="handle" href="javascript:show()">显示更多结果</a></div>
</div>
<script type="text/javascript">
var iHeight = 0;
var iTop = 0;
var clientHeight = 0;
var iIntervalId = null;
var itemsSize = 0;
var pageNo = 1; // 当前页数,默认设为第 1 页
var pageSize = 4; // 每页显示的数量
getPageHeight();
// 添加定时检测事件,每2秒检测一次
iIntervalId = setInterval("_onScroll();", 2000);
// 取得当前页面显示所占用的高度
function getPageHeight() {
if(document.body.clientHeight && document.documentElement.clientHeight) {
clientHeight = (document.body.clientHeight < document.documentElement.clientHeight) ? document.body.clientHeight : document.documentElement.clientHeight;
} else {
clientHeight = (document.body.clientHeight > document.documentElement.clientHeight) ? document.body.clientHeight : document.documentElement.clientHeight;
}
iHeight = Math.max(document.body.scrollHeight,document.documentElement.scrollHeight);
}
// 调用ajax取服务端数据
function show() {
pageNo++;
$.ajax({
url: 'img.php?p='+pageNo+'&r='+Math.random(),
type: 'GET',
dataType: 'text',
timeout: 4000,
beforeSend: showLoadingImg,
error: showFailure,
success: showResponse
});
}
function showLoadingImg() {
$('#showmore').html('<a class="handle" href="javascript:show()"><img src="images_test/loading.gif" height="32px" />显示更多结果</a>');
}
function showFailure() {
$('#showmore').html('<font color=red> 获取查询数据出错 </font>');
}
// 根据ajax取出来的json数据转换成html
function showResponse(responseData) {
var returnjson = eval("("+responseData+")");
itemsSize = returnjson.items.length;
var nextpagehtml = '';
var pageOffset = (pageNo-1)*pageSize + 1;
for(i=0; i<itemsSize; i++) {
nextpagehtml += '<ul class="item">';
nextpagehtml += '<li class="i_thumb"><a href="http://www.xuekaifa.com" target="_blank" title="'+ returnjson.items[i].name +'"><img src="'+ returnjson.items[i].pic +'" alt="'+ returnjson.items[i].name +'" /></a></li>';
nextpagehtml += '<li class="i_title"><span class="order">'+ (pageOffset + i) +'</span><a href="http://www.xuekaifa.com" target="_blank" title="'+ returnjson.items[i].name +'">'+ returnjson.items[i].name +'</a></li>';
nextpagehtml += '</ul>';
}
nextpagehtml += '<div class="clear"></div>';
$('#items').html($('#items').html() + nextpagehtml);
// 当前页码数小于3页时继续显示更多提示框
if(pageNo < 3) {
$('#showmore').html('<a class="handle" href="javascript:show()">显示更多结果</a>');
} else {
clearInterval(iIntervalId);
$('#showmore').hide();
}
}
// 判断滚动条是否到达底部
function reachBottom() {
var scrollTop = 0;
if(document.documentElement && document.documentElement.scrollTop) {
scrollTop = document.documentElement.scrollTop;
} else if (document.body) {
scrollTop = document.body.scrollTop;
}
if((scrollTop > 0) && (scrollTop + clientHeight == iHeight)) {
return true;
} else {
return false;
}
}
// 检测事件,检测滚动条是否接近或到达页面的底部区域,0.99是为了更接近底部时
function _onScroll() {
iTop = document.documentElement.scrollTop + document.body.scrollTop;
getPageHeight();
if(((iTop+clientHeight)>parseInt(iHeight*0.99))||reachBottom()) {
if(pageNo >= 3) {
clearInterval(iIntervalId);
$('#showmore').hide();
return;
}
show();
}
};
</script>
</body>
</html>
分享到:
相关推荐
在实现图片动态加载时,我们主要利用jQuery的事件监听和AJAX异步请求功能。 1. **基础结构**:创建一个HTML页面,包含一个用于展示图片的容器,例如`<div id="waterfall"></div>`。这个容器可以是瀑布流布局,便于...
**jQuery图片预加载技术详解** 在网页开发中,图片预加载是一种优化用户体验的重要技术,尤其在Web和移动端,用户往往期望页面能快速显示并流畅运行。`jQuery`库以其简洁的API和强大的功能,成为实现图片预加载的...
### jQuery+ajax实现动态添加表格tr td功能 ...本文展示的示例是一个动态添加表格tr td功能的基础实现,通过实践这个例子,读者可以加深对jQuery和ajax技术的理解,并学会将这些技术应用到实际的Web开发中。
**jQuery图片延迟加载技术详解** 在网页设计中,图片往往是页面加载速度的主要影响因素,尤其当页面包含大量图片时,用户可能需要等待较长时间才能看到完整的内容。为了解决这个问题,"图片延迟加载"(Lazy Load)...
你可以下载并运行这个示例,观察预加载图片在滚动过程中的动态加载过程,更好地理解其工作原理和使用方法。 总之,jQuery LazyLoad是一个强大的图片预加载工具,通过它我们可以有效地提升网页性能,优化用户体验。...
通过jQuery,我们可以轻松地添加一个浮动的放大镜区域,当鼠标移动到图片上时,该区域会显示放大的图像部分。这涉及到CSS样式设计、JavaScript事件监听以及动态修改元素的样式属性,如宽度、高度和背景图像位置。 ...
18. jQuery图片插件之鼠标放在图片上出现动态的hover效果插件 19. jQuery图片自动轮播淡入淡出的幻灯插件iFadeSlide 20. jQuery大气banner带时间线自动播放的焦点图轮番切换代码 21. jquery定时自动切换banner...
1. **动态添加水印**:此插件可以在图片加载完成后,自动在图片上添加水印。这避免了在图片源文件上添加水印,从而减轻了服务器负担。 2. **自定义水印内容**:用户可以根据需要设置水印的文字、颜色、大小、透明度...
jQuery动态图片加载插件是一种广泛应用于网页开发中的技术,它能有效地优化网页性能,提高用户体验。在网页中,特别是含有大量图片的页面,如果一次性加载所有图片,可能会导致页面加载速度慢,用户需要等待较长的...
此外,这个示例还展示了jQuery的一些基本用法,如选择器(如`$("#template")`)、遍历(`$.each()`)、DOM操作(`clone()`, `find()`, `text()`, `appendTo()`)等。了解和熟练掌握这些基础功能,能够帮助开发者更...
<title>jQuery预加载图片示例 <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <script src="jquery.preload.js"> 预加载图片"> $(function() { // 预加载图片 $.preload(['...
总的来说,这个示例提供了一种高效、用户友好的方式来展示和浏览大量图片,利用jQuery的强大功能,实现了动态加载和分页,使得网页加载更加流畅,降低了服务器压力,提升了用户体验。对于想要学习或应用类似功能的...
总结来说,jQuery无限滚动加载图片瀑布流技术是结合了jQuery库、瀑布流布局和无限滚动加载的网页设计技巧,通过精心设计的插件,可以轻松地实现在网页上动态加载和展示图片,为用户提供流畅、无阻隔的浏览体验。
总之,jQuery Loading图片延迟加载特效是一种有效的性能优化手段,它结合了jQuery的便利性和JavaScript的动态特性,实现了图片在需要时才加载,从而提升了网页加载速度和用户体验。对于图片相册类的应用,这种特效...
"jQuery图片预加载+等比例缩放"是一个常见的优化技术,旨在提高用户体验,确保图片以最佳方式呈现。本篇将详细介绍这两个概念以及如何在实际项目中实现它们。 ### 一、jQuery图片预加载 **1. 为什么要进行图片预...
本教程将详细讲解基于jQuery实现的"精美的jQuery图片墙示例代码",该示例代码能为网页增添动态、交互性的图片展示效果。 首先,我们需要了解jQuery的基本用法。jQuery通过"$"符号作为其主要的入口点,用于选择DOM...
在“jQuery+EasyUI 开发示例(附源码)”这个资源中,你将找到实际的代码实例,这些示例展示了如何结合使用这两个库来创建功能丰富的 Web 应用。通过学习和分析这些源码,你可以了解如何组织代码结构,如何调用 API...
这个"jQuery动态图片加载代码.zip"压缩包提供了一个实用且美观的解决方案,适合网页设计师和前端开发者使用。下面我们将详细探讨jQuery动态加载图片的原理、实现方式以及与CSS特效的结合。 jQuery是一个广泛使用的...
这个“头像选择功能基于jQuery下拉框图片选择示例”提供了一个高效且用户友好的解决方案,使得用户能够方便地从一系列预设的头像中选取自己的代表形象。 首先,我们要理解jQuery库在其中的作用。jQuery是一个广泛...
在压缩包`jqueryLoadingImg`中,可能包含了实现jQuery图片延迟加载的示例代码或者相关资源。具体文件内容可能包括HTML、CSS和JavaScript文件,它们共同展示了如何集成和使用jQuery延迟加载插件。 总结,jQuery图片...