在火星最后一个月——第一天
来源:互联网 发布:vue.js tomcat 编辑:程序博客网 时间:2024/05/18 06:21
本周是来火星学习的最后一个月了,想想马上要出去工作了还有一点小激动呢,今天学习的是CSS+JS,我去,效果杠杠的呀。
先把最终的效果PO上来吧:
(未点击时图片的效果)
(点击任意图片后的效果)
接下来是今天所学的所有案例:
demo1--.显示一张图片
<div class="item" style="background-image: url(images/0.jpg);"></div>
.item {width: 196px;height: 100px;background-size: cover;}
第一步非常简单对吧,就是往body里面放了一个div,so,各位看官看到这里是不是觉得so easy!好的,往下走
demo02--.显示25张图片
<body><ul class="gallary"></ul></body>
<style>.item {width: 196px;height: 100px;background-size: cover;}</style>
<script>$(function(){var gallary = $(".gallary");for (var i = 0; i < 25; i++) {var li = $('<li><div class="item" style="background-image: url(images/0.jpg);"></div></li>');gallary.append(li);}});</script>图片还是那张图片,body里还是只有一个ul,样式也没有变化,在script里面大家看我的循环判断条件,25?!,对的,这里是将图片的路径提前修改好了,我的图片src是0-25的阿拉伯数字,数据组织好了,算法才简单嘛,后面只需要将获取到的li数据添加到ul里面就ok了,好的,这步没问题了,咱往下走
demo03--.显示25张不同的图片
<body><ul class="gallary"></ul></body>
<style>.item {width: 196px;height: 100px;background-size: cover;}</style>
<script>$(function(){var gallary = $(".gallary");for (var i = 0; i < 25; i++) {var li = $('<li><div class="item"></div></li>');li.find("div").css("background-image", "url(images/"+ i +".jpg)");gallary.append(li);}//li.appendTo(gallary);});</script>body与样式还是没动,改动的还是script,大家仔细看,images后面的图片路径,咱们将具体的路径用变量代替了,然后套路不变,25张图片顺利输出, 好的,下面继续
demo04--
<body><ul class="gallary center"></ul></body>
<style> ul, li { padding: 0px; margin: 0px; list-style: none; } .gallary { width: 980px; height: 500px; } .item { width: 196px; height: 100px; background-size: cover; float: left; /*position: absolute; left: 0px; top: 0px;*/ } .center { position: absolute; left: 0px; right: 0px; top: 0px; bottom: 0px; margin: auto; } </style>
<script> $(function () { var gallary = $(".gallary"); for (var i = 0; i < 25; i++) { $('<li><div class="item"></div></li>') .find("div") .css("background-image", "url(images/" + i + ".jpg)") .end() .appendTo(gallary) } }); </script>
这步大家也可以看到点未点击时的样子了,这里是给body里的ul加上一个center类的绝对居中,让所有的item浮动,script使用的是jQuery的链式方法,好的,继续
demo05--显示大图
<body><input id="btnShowBigPicture" type="button" value="showBigPicture" /> <ul class="gallary center"></ul></body>
<style>ul, li {padding: 0px;margin: 0px;list-style: none;}.gallary {width: 980px;height: 500px;}.item {width: 196px;height: 100px;background-size: cover;float: left;/*position: absolute;left: 0px;top: 0px;*/}.center {position: absolute;left: 0px;right: 0px;top: 0px;bottom: 0px;margin: auto;}
<script>$(function(){var collum = 5;var gallary = $(".gallary");for (var i = 0; i < 25; i++) {$('<li><div class="item"></div></li>').find("div").css("background-image", "url(images/"+ i +".jpg)").end().appendTo(gallary)}$("#btnShowBigPicture").click(function(){$(".gallary .item").css({"background-image": "url(images/21.jpg)","background-size": "auto"}).each(function(i){var r = parseInt(i / collum);var c = i % collum;var rate = 100 / (collum - 1)var x = rate * c;var y = rate * r;$(this).css("background-position", x + "% "+ y +"%");});});});</script>这一步,多了一个可点击的按钮,当点击按钮时改变item的图片,以及background-position,首先先将行列求出再取整,此时到达的效果就是会依次改变图片的位置坐标,从而显示出一张大图,好的,下一步
demo06--在不同的时间点隐藏
<body><input id="btnShowBigPicture" type="button" value="showBigPicture" /> <input id="btnHide" type="button" value="hide" /> <ul class="gallary center"></ul></body>
<style>ul, li {padding: 0px;margin: 0px;list-style: none;}.gallary {width: 980px;height: 500px;}.item {width: 196px;height: 100px;background-size: cover;float: left;/*position: absolute;left: 0px;top: 0px;*/}.center {position: absolute;left: 0px;right: 0px;top: 0px;bottom: 0px;margin: auto;}</style>
<script>$(function(){var collum = 5;var gallary = $(".gallary");for (var i = 0; i < 25; i++) {$('<li><div class="item"></div></li>').find("div").css("background-image", "url(images/"+ i +".jpg)").end().appendTo(gallary)}$("#btnShowBigPicture").click(function(){$(".gallary .item").css({"background-image": "url(images/21.jpg)","background-size": "auto"}).each(function(i){var r = parseInt(i / collum);var c = i % collum;var rate = 100 / (collum - 1)var x = rate * c;var y = rate * r;$(this).css("background-position", x + "% "+ y +"%");});});$("#btnHide").click(function(){//$(".gallary .item").css({"opacity": "0.05"});//$(".gallary .item").animate({"opacity": "0.05"}, 5000, "swing");$(".gallary .item").each(function(i){$(this).animate({"opacity": "0.05"}, Math.random() * 5000, "swing");//$(this).animate({"opacity": "0.05"}, 500*i, "swing");});});});</script>
这一步最重要的就是使用math对象的random()函数,由于隐藏的时间各不相同,造成了逐个消失的效果。
各位看官,写到这里PO主已经要饿死了,待PO主吃饱了再继续更
0 0
- 在火星最后一个月——第一天
- SQL查询一个月第一天/最后一天
- 获取一个月的第一天及最后一天
- 获得一个月的第一天与最后一天
- python获取一个月的最后一天和第一天
- oracle 中某月的第一天,最后一天,前一个月的第一天,最后一天,类似方法
- 2014年的最后一个月的第一天
- Calendar获取月第一天,最后一天
- JAVA获取月第一天、最后一天
- 用javascript怎么取到当前月第一天、最后一天,本周第一天、最后一天
- JavaScript获取一个月的最后一天
- JavaScript获取一个月的最后一天
- 怎么样取一个月的最后一天。
- Coldfusion: 获得一个月的最后一天。
- 获取一个月的最后一天
- 一个月的第一天和最后一天
- JS获取一个月的最后一天
- 关于js获取一个月最后一天
- html标签
- C++代码注释转化
- Android设计模式之23种设计模式一览
- MySQL☞悲观锁详解
- leetCode
- 在火星最后一个月——第一天
- 使用Messenger实现进程间通信
- 算法入门
- 跨域问题
- ubuntu安装内核后,必须更新grubs才会开机选择新内核
- UI设计师不可不知的安卓屏幕知识
- Ldap connection timeout error:
- 静态链接--空间和地址分配
- Struts2框架学习(第四讲)