Jquery动画方法 jquery.animate()

2024-02-05 22:50

本文主要是介绍Jquery动画方法 jquery.animate(),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目前在学习Oracle数据库,由于刚接触,学校让练习练习HTML内容,就想起了老师以前提起过的animate方法

animate是jquery的一个方法,这个方法主要功能是能实现比较平滑的动态效果,所以你想做一个简单又不失美观的动态效果不如试试它

下面总结一下以前常用的幻灯片效果实现用的方法:

  切换:show(time)/hide(time):刚接触Jquery的时候大家应该用的最多的就是这两个方法,我个人觉得这个方法太丑了,一瞬间消失,或者一瞬间出现

  列表滚动:这个多数人会直接使用其css属性做,或者position().left。。。等等方法,也是直接就过去了,总觉得不高大上

  fadein()/fadeOut():朦胧感

  slipeUp/slipedown()...等等

  代码量:以上效果,想要实现,代码量大

  

  下面是我实现的一个幻灯片切换效果:

    包括大图片切换、小图列表突出显示、文字跟随小图跑、

  

  1 <!DOCTYPE html>
  2 <html>
  3   <head>
  4     <base href="<%=basePath%>">
  5     <title>animate实现幻灯片</title>
  6     
  7     <link rel="stylesheet" type="text/css" href="animate.css" />
  8     <script type="text/javascript" src="jquery-1.8.3.js">
  9     </script>
 10         
 11     <script type="text/javascript">
 12         var index=0;
 13         var flag=true;
 14         $(function(){
 15             $(".imgshow li:not(:first)").hide();
 16             $(".text li:not(:first)").hide();
 17             styleMe(".imglist li:eq("+index+")");
 18             change(index);
 19             $(".imgshow").mouseover(function(){
 20                 flag=false;
 21             
 22             });
 23             $(".imgshow").mouseout(function(){
 24                 flag=true;
 25             
 26             });
 27             $(".imglist li").bind({
 28                 mouseout:function(){
 29                     flag=true;
 30                 },mouseover:function(){
 31                     flag=false;
 32                     index=$(this).index();
 33                     
 34                     change(index);
 35                 },click:function(){
 36                     flag=false;
 37                     styleMe($(this));
 38                     index=$(this).index();
 39                     change(index);
 40                 }
 41             
 42             });
 43             
 44                 setInterval(function(){
 45                     
 46                     if(flag){
 47                         index=index+1;
 48                         if(index==5){
 49                             index=0;
 50                         }
 51                         change(index)
 52                     }
 53                     
 54                 
 55                     
 56                 
 57                 
 58                 },4000);
 59             });
 60     //图片切换
 61         function change(index){
 62             //图片
 63             
 64             styleMe(".imglist li:eq("+index+")");
 65             $(".imgshow li:eq("+index+")")
 66             .show().animate({opacity:'0.5'},300).animate({opacity:'1'},500)
 67             .siblings()
 68             .hide();
 69             //文本
 70             var left=$(".imglist li:eq("+index+")").position().left+180;
 71             //alert(left);
 72             if(index==4){
 73                 //200=ul初始位置180px +padding20px;
 74                 //获取有些问题,直接赋值
 75                var width=480;
 76             
 77                 left=left-width;    
 78             }
 79             $(".text").stop(true,true);
 80             $(".text").animate({opacity:'0.7',marginLeft:left},700).animate({opacity:'1'},200);
 81         //    alert("index:"+index+";left:"+left+";width:"+width);
 82             $(".text li:eq("+index+")")
 83             .show()
 84             .siblings()
 85             .hide();
 86             
 87             
 88             //$(".text").css("margin-left",left);
 89         
 90         
 91         }
 92         function styleMe(doc){
 93             $(doc).stop(true,true);
 94             $(doc).animate({marginTop:'-25px'},200).siblings().animate({marginTop:'0px'},400);
 95             $(doc).addClass("mouse").siblings().removeClass("mouse");
 96         }    
 97     </script>
 98   </head>
 99       
100   <body>
101       
102     <div>
103         <ul class="imgshow">
104         <li><img src="img/1.jpg" /></li>
105         <li><img src="img/2.jpg" /></li>
106         <li><img src="img/3.jpg" /></li>
107         <li><img src="img/4.jpg" /></li>
108         <li><img src="img/5.jpg" /></li>
109     
110     </ul>
111     <ul class="imglist">
112         <li><img src="img/1.jpg" /></li>
113         <li><img src="img/2.jpg" /></li>
114         <li><img src="img/3.jpg" /></li>
115         <li><img src="img/4.jpg" /></li>
116         <li><img src="img/5.jpg" /></li>
117     
118     </ul>
119     <ul class="text"> 
120         <li>电影十二生肖去景点</li>
121         <li>美国农庄公路</li>
122         <li>青山碧水</li>
123         <li>阿尔卑斯山下美丽的山庄</li>
124         <li>这是小羊肖恩嘛?太可爱了吧,好想拥有一只</li>
125     
126     </ul>
127     
128     </div>
129     
130   </body>
131 </html>

css代码:

 1 /*animate*/
 2 *{
 3     margin:0px;
 4     padding:0px;
 5 }
 6 body{
 7     width:100%;
 8 
 9 }
10 div{
11 width:1000px;
12 margin:auto;
13 }
14 ul{
15 width:1000px;
16 margin:auto;
17 list-style:none;
18 
19 }
20 .imgshow img{
21     height:600px;
22     width:1000px;
23 
24 }
25 .mouse{
26 /**    border-bottom:30px solid green;**/
27     background-color:#2F2F2F;
28 }
29 .imglist{
30     top:480px;
31     margin-left:50px;
32     z-index:2;
33     position:absolute;
34 }
35 .imglist li{
36     float:left;
37     padding:20px 10px;
38     display:block;
39 
40 }
41 .imglist img{
42         height:60px;
43         width:100px;
44 
45 
46 }
47 .text{
48     width:auto;
49     top:430px;
50     margin-left:180px;
51     z-index:2;
52     position:absolute;
53     
54 }
55 .text li{
56     padding:20px 30px;
57     background-color:#2F2F2F;
58     color:#ccc;
59     font-size:14px;
60 
61 }

 

效果图:

 

 

总结:

  animate缺点:

    每个动画必须演示完才能结束,这就导致如果频繁去使用这个方法,会导致延迟(实际上不是)

  优点:

    animate支持同一个容器的所有动作可以依次从第一个往下执行,这个特性我最喜欢!

  个别缺点解决办法:

   延迟可以使用document.stop("容器名");

  

  

转载于:https://www.cnblogs.com/gcs1995/p/4085824.html

这篇关于Jquery动画方法 jquery.animate()的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/682414

相关文章

在React中引入Tailwind CSS的完整指南

《在React中引入TailwindCSS的完整指南》在现代前端开发中,使用UI库可以显著提高开发效率,TailwindCSS是一个功能类优先的CSS框架,本文将详细介绍如何在Reac... 目录前言一、Tailwind css 简介二、创建 React 项目使用 Create React App 创建项目

vue使用docxtemplater导出word

《vue使用docxtemplater导出word》docxtemplater是一种邮件合并工具,以编程方式使用并处理条件、循环,并且可以扩展以插入任何内容,下面我们来看看如何使用docxtempl... 目录docxtemplatervue使用docxtemplater导出word安装常用语法 封装导出方

Linux换行符的使用方法详解

《Linux换行符的使用方法详解》本文介绍了Linux中常用的换行符LF及其在文件中的表示,展示了如何使用sed命令替换换行符,并列举了与换行符处理相关的Linux命令,通过代码讲解的非常详细,需要的... 目录简介检测文件中的换行符使用 cat -A 查看换行符使用 od -c 检查字符换行符格式转换将

SpringBoot实现数据库读写分离的3种方法小结

《SpringBoot实现数据库读写分离的3种方法小结》为了提高系统的读写性能和可用性,读写分离是一种经典的数据库架构模式,在SpringBoot应用中,有多种方式可以实现数据库读写分离,本文将介绍三... 目录一、数据库读写分离概述二、方案一:基于AbstractRoutingDataSource实现动态

Java中的String.valueOf()和toString()方法区别小结

《Java中的String.valueOf()和toString()方法区别小结》字符串操作是开发者日常编程任务中不可或缺的一部分,转换为字符串是一种常见需求,其中最常见的就是String.value... 目录String.valueOf()方法方法定义方法实现使用示例使用场景toString()方法方法

Java中List的contains()方法的使用小结

《Java中List的contains()方法的使用小结》List的contains()方法用于检查列表中是否包含指定的元素,借助equals()方法进行判断,下面就来介绍Java中List的c... 目录详细展开1. 方法签名2. 工作原理3. 使用示例4. 注意事项总结结论:List 的 contain

macOS无效Launchpad图标轻松删除的4 种实用方法

《macOS无效Launchpad图标轻松删除的4种实用方法》mac中不在appstore上下载的应用经常在删除后它的图标还残留在launchpad中,并且长按图标也不会出现删除符号,下面解决这个问... 在 MACOS 上,Launchpad(也就是「启动台」)是一个便捷的 App 启动工具。但有时候,应

SpringBoot日志配置SLF4J和Logback的方法实现

《SpringBoot日志配置SLF4J和Logback的方法实现》日志记录是不可或缺的一部分,本文主要介绍了SpringBoot日志配置SLF4J和Logback的方法实现,文中通过示例代码介绍的非... 目录一、前言二、案例一:初识日志三、案例二:使用Lombok输出日志四、案例三:配置Logback一

Python实现无痛修改第三方库源码的方法详解

《Python实现无痛修改第三方库源码的方法详解》很多时候,我们下载的第三方库是不会有需求不满足的情况,但也有极少的情况,第三方库没有兼顾到需求,本文将介绍几个修改源码的操作,大家可以根据需求进行选择... 目录需求不符合模拟示例 1. 修改源文件2. 继承修改3. 猴子补丁4. 追踪局部变量需求不符合很

mysql出现ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)的解决方法

《mysql出现ERROR2003(HY000):Can‘tconnecttoMySQLserveron‘localhost‘(10061)的解决方法》本文主要介绍了mysql出现... 目录前言:第一步:第二步:第三步:总结:前言:当你想通过命令窗口想打开mysql时候发现提http://www.cpp