美女图片站建站总结
来源:SegmentFault
时间:2023-02-24 18:29:01 458浏览 收藏
IT行业相对于一般传统行业,发展更新速度更快,一旦停止了学习,很快就会被行业所淘汰。所以我们需要踏踏实实的不断学习,精进自己的技术,尤其是初学者。今天golang学习网给大家整理了《美女图片站建站总结》,聊聊MySQL、PHP、ajax、静态化,我们一起来看看吧!
俗话说的好,不爱美女的程序员不是一个好司机!
mm:http://mm.luckyw.cn/
妹子图:http://mzt.luckyw.cn/
煎蛋:http://jd.luckyw.cn/
这几天一直在菜鸟教程学习
php和
mysql,想总结一下自己的学习成果,so这个
mm图片站也就这么自然而然地出来了,主要使用了
图片瀑布流、
ajax加载数据,
php页面静态化、
图片分页等方法进行实现
图片瀑布流
我这里分为两种瀑布流方法,第一种方式(首页静态化页面
index.html):
先获取所有的图片盒子
boxes,每个图片盒子的宽度
box_w,文档的宽度
W,从而得到列数
num,然后设置容器
$('#imgBox')的宽度为
列数 × 每个图片盒子的宽度。然后定义一个数组
arr存储每列的高度,对所有图片盒子进行遍历,如果此时索引小于列数,则把这个图片盒子的高度添加到盒子中,如果此时索引大于列数,那么先获取数组
arr中高度最短
minH的那一列的索引
minIndex,然后定义图片盒子在容器中的位置,因为我的容器
imgBox已经定义了
position:relative,设置图片盒子为
position:absolute则相对于容器进行绝对定位,并设置图片盒子的
left和
top值,之后再把数组中最低高度那一列的值加上这个图片盒子的高度,此时即实现了图片瀑布流效果,随页面滚动触发
ajax加载数据,之后一个一个把图片盒子添加到容器中去
function waterfall() { var boxes = $('.box'); var box_w = boxes.eq(0).outerWidth(true); var W = document.body.clientWidth || document.documentElement.clientWidth; var num = Math.floor(W / box_w); //5 $('#imgBox').width(num * box_w); $('.w').width(num * box_w); var arr = []; boxes.each(function(index, ele) { var h = $(ele).outerHeight(true); if (index
第二种方式(图片分页):
基本和上面差不多,也是获取所有的图片盒子
boxes,每个图片盒子的宽度
box_w,文档的宽度
W,从而得到列数
num,然后设置容器
$('#imgBox')的宽度为
列数 × 每个图片盒子的宽度。不过不同的是,我这里采用定义
num个列
div盒子,设置它的宽为图片盒子的宽度
box_w,
display为
inline-block,然后添加到容器中去,之后把所有的图片盒子从
dom中删去然后一个一个地追加到最短的那一列中去
ajax加载数据
我这里是采用
python从网上抓取图片链接,然后保存到
mysql数据库中,然后设计一个接口访问这些数据,接口链接:http://luckyw.cn/api/load_img...
当页面滚动时触发
ajax加载数据的方法,此时
ajax通过接口请求数据,然后把一个一个的图片盒子添加到容器中去,再应用图片瀑布流即达到了瀑布流加载图片的效果,
ajax请求图片数据的代码如下:
/** * ajax请求图片数据 * @param s:开始位置 * @param n:每页数 */ function ajax(s, n) { $.ajax({ url: 'http://luckyw.cn/api/load_img.php?start=' + s + '&num=' + n, method: 'GET', dataType: "json", success: function(data) { var imgs = data.list; for (var i in imgs) { var box = $('').addClass('box'); var a = $('首页"; $page_navigation.=""; } if($totalPage>$showPageNum){ if($page>$pageOffset+1){ $page_navigation .= '...'; } if($page>$pageOffset){ $start = $page-$pageOffset; $end = $totalPage>$page+$pageOffset?$page+$pageOffset:$totalPage; }else{ $start = 1; $end = $showPageNum; } if($page+$pageOffset>$totalPage){ $start = $start - ($page+$pageOffset-$end); } } for($i=$start;$i$i"; }else{ $page_navigation.="$i"; } } if($totalPage>$showPageNum&&$totalPage>$page+$pageOffset){ $page_navigation.='...'; } if($page下一页>"; $page_navigation.="尾页"; } $page_navigation.="共有{$totalPage}页";好了,本文到此结束,带大家了解了《美女图片站建站总结》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多数据库知识!
声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
-
499 收藏
-
244 收藏
-
235 收藏
-
157 收藏
-
101 收藏
最新阅读
更多>
-
476 收藏
-
312 收藏
-
244 收藏
-
195 收藏
-
334 收藏
-
420 收藏
课程推荐
更多>
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 507次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习