初用jquery
---恢复内容开始---
这两天在顶顶大人的指导下,利用jquery框架做了一个动态切换的小页面。最终效果图:



这么萌萌哒的图片让我觉得一直在测试也没那么累。实现功能如下:
1.打开页面时,自动切换,切换顺序为123212...这样
2.当用户鼠标放在三个按钮中的某一个时,会停留,不再切换;当鼠标移开后,继续执行自动切换。
码代码的过程:
关键是设置一个父元素,使其高度小于子元素。这样才会出现滚动条啦。要记住把父元素的overflow属性设置为hidden哦,不然又滚动条什么的影响美观。我之前就是设置为auto,顶顶大人指导+1。在子元素中的图片都设置float:left,当然别忘了清除浮动。
这些设置完就要设置左侧按钮了,如何让那三个按钮垂直居中,头疼了半天。最后还是百度了下,给父元素设置display属性,属性值为table;对子元素设置:
display:table-cell;
vertical-align:middle;
然后是把方方丑丑的按钮变为圆圆的,设置border-radius;我把值取它width的一半,就圆了。
简单的静态页面写完了,然后开始写js文件。说到这个,上一次让小顶大人查错,他非常认真地查了大半天,就是查不出错。然后原来我把script标签里的type属性写成type=“javascript/text” 小顶兄怒了...然后我记住了,以后不确定就不要写了。顶大人指导+2
为了实现它每隔一定时间自动切换,用到了window的方法,window.setInterval(参数1,参数2),好吧这里又有个小错误,又把window写成windows,又是查错半天无果的节奏。
顶大人指导+3。先是在ready事件设置了一个数组 array[0,1,2,1]切换循环执行的顺序,设置了一个变量j=0。然后设置了一个interval函数令i=++j/4;(先加j是因为最开始是设置了第一个按钮是红的,所以执行开始是从第二个按钮开始的。即触发第二个btn。)顶顶大人让我去问问看后台的那个大神,也许他有更优雅的写法,他常说后台大神写的代码超优雅~最后调用了参数为i的scroll方法。scroll方法中1.首先是一个链式写法,被改写了。我写得太繁琐了。
$(".totbtn input").eq(array[i]).addClass('red').siblings().removeClass("red");
这几天看了些jquery的方法, 还是可以看懂这个链式结构的。这个链式结构实现的功能是将索引等于array[i]的按钮添加red类,而他的同辈元素将red类移除。
2.stop(1,1) 当不加上这行代码时,就出现了这样一个bug,鼠标放在按钮上时,不会停止动画。
3.用到了srollTop()函数设置动画效果。它的参数为array[i]*200 (图片高度是200)当i=0,array[i]也为0,此时显示前三分之一内容,即第一个按钮触发时显示的内容。当i=3时,array[i]=1,此时高度为200显示第二部分内容。原先直接设置i*200,所以当i=3时,就会出现错误。
在reay事件下直接设置int= window.setInterval(interval,1000);
对三个按钮设置mouseover()分别调用scroll函数,并将其中参数分别设置为0,1,2。并设置clearInterval()实现当鼠标停留时,自动切换停止,并停留在当前内容。
在另外对这个三个按钮分别设置mouseout()函数。重置j值为当前class为red的索引值。然后重置int=window.setInterval(interval,1000);调用interval函数,写入新获得的j值。(j值不再从0开始)
基本的jquery就在这里了。第一次发博,感觉写得不清不楚的,再接再厉吧。
---恢复内容结束---
初用jquery的更多相关文章
- 【深入浅出jQuery】源码浅析--整体架构
最近一直在研读 jQuery 源码,初看源码一头雾水毫无头绪,真正静下心来细看写的真是精妙,让你感叹代码之美. 其结构明晰,高内聚.低耦合,兼具优秀的性能与便利的扩展性,在浏览器的兼容性(功能缺陷.渐 ...
- jQuery整体架构源码解析(转载)
jQuery整体架构源码解析 最近一直在研读 jQuery 源码,初看源码一头雾水毫无头绪,真正静下心来细看写的真是精妙,让你感叹代码之美. 其结构明晰,高内聚.低耦合,兼具优秀的性能与便利的扩展性, ...
- [译] EXTENDING JQUERY – 2.2 A simple plugin
2.2 一个简单的插件示例 jQuery 插件能做任何事情,这个已经由浩如烟海的各类第三方插件如证明.小到只影响一个元素,大到改变多个元素的外观和行为,jQuery 的各种功能等你来扩展. 2.2.1 ...
- jQuery整体架构源码解析
最近一直在研读 jQuery 源码,初看源码一头雾水毫无头绪,真正静下心来细看写的真是精妙,让你感叹代码之美. 其结构明晰,高内聚.低耦合,兼具优秀的性能与便利的扩展性,在浏览器的兼容性(功能缺陷.渐 ...
- 【深入浅出jQuery】源码浅析--整体架构(转)
最近一直在研读 jQuery 源码,初看源码一头雾水毫无头绪,真正静下心来细看写的真是精妙,让你感叹代码之美. 其结构明晰,高内聚.低耦合,兼具优秀的性能与便利的扩展性,在浏览器的兼容性(功能缺陷.渐 ...
- jquery源码解读
最近一直在研读 jQuery 源码,初看源码一头雾水毫无头绪,真正静下心来细看写的真是精妙,其结构明晰,高内聚.低耦合,兼具优秀的性能与便利的扩展性,在浏览器的兼容性(功能缺陷.渐进增强)优雅的处理能 ...
- jQuery 整体架构
不同于 jQuery 代码各个模块细节实现的晦涩难懂,jQuery 整体框架的结构十分清晰,按代码行文大致分为如上图所示的模块. 初看 jQuery 源码可能很容易一头雾水,因为 9000 行的代码感 ...
- Java程序员从笨鸟到菜鸟全部博客目录
本文来自:曹胜欢博客专栏.转载请注明出处:http://blog.csdn.net/csh624366188 大学上了一年半,接触java也一年半了,虽然中间也有其他东西的学习,但是还是以java为主 ...
- 《Java程序员由笨鸟到菜鸟》
<Java程序员由笨鸟到菜鸟> 在众多朋友的支持和鼓励下,<Java程序员由菜鸟到笨鸟>电子版终于和大家见面了.本电子书涵盖了从java基础到javaweb开放框架的大部分内容 ...
随机推荐
- Objective-C-使用NSMutableURLRequest发送POST请求,使用NSJSONSerialization解析JSON字符串
NSString *reqData = @"Data="; NSData *postDatas = nil; NSString *urlPath = @"url" ...
- 生成N个不相等的随机数
近期项目中须要生成N个不相等的随机数.实现的时候.赶工期,又有项目中N非常小(0-100)直接谢了一个最直观的方法: public static List<Integer> randomS ...
- 在JAVA中线程到底起到什么作用
这是javaeye上非常经典的关于线程的帖子,写的非常通俗易懂的,适合任何读计算机的同学. 线程同步 我们可以在计算机上运行各种计算机软件程序.每一个运行的程序可能包括多个独立运行的线程(Thread ...
- css匹配原理与优化
一. 匹配原理 浏览器CSS匹配不是从左到右进行查找,而是从右到左进行查找.比如之前说的 DIV#divBox p span.red{color:red;},浏览器的查找顺序如下:先查找 html 中 ...
- MySQL性能监控工具-MONyog
1.登录配置界面 2.show processlist 查看当前使用的进程 3.警告建议你应该优化哪些参数. 4.介绍一下慢查询的配置,其它的可以自己配置,都是简单的英文. 该工具,用着还不错.其 ...
- PERCONA-TOOLKIT 工具的安装与使用1
-c times Sun Jul :: CST Tracing process ID total pread read pwrite write fsync open close lseek fcnt ...
- 导入cocos2d-x samples android官方示例
导了一晚上samples android示例,查了一晚上资料,费了很大的劲,终于成功导入并运行成功,分享一下经验: 1.下载eclipse与ADT跟android SDK,相信大家都会装了吧. 2.下 ...
- linux安全加固
1 . BIOS 你应该总是在系统启动的时候设置一个BIOS 密码和禁用从CD-ROM 和软盘引导,这将可以防止一些人未经允许访问你的系统和更改BIOS 设置 2 .sshd 服务 SSH 是一个协议 ...
- Android App用MulticastSocket监听组播,为什么连接到不同路由、在不同手机上跑,有的能收到有的收不到
---------------------------!! 转载请注明出处 !!----------------------- 一个项目,利用wifi组播在局域网内发现设备.却发现在有的路由器上能 ...
- [转]ORACLE 绑定变量用法总结
转:http://blog.csdn.net/wanghai__/article/details/4778343 在oracle 中,对于一个提交的sql语句,存在两种可选的解析过程, 一种叫做硬解析 ...