jQuery 动画效果

三类九种以及自定义动画效果
jQuery animate() 方法用于创建自定义动画。

语法:

<pre style="margin-top:10px;margin-bottom:0px;padding:10px;border:1px dotted rgb(119,136,85);font-family:Consolas, 'Courier New', Courier, monospace;background:rgb(245,245,245);">$(selector).animate({params},speed,callback);</pre>

必需的 params 参数定义形成动画的 CSS 属性。

可选的 speed 参数规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。

可选的 callback 参数是动画完成后所执行的函数名称。

提示:默认地,所有 HTML 元素都有一个静态位置,且无法移动。

如需对位置进行操作,要记得首先把元素的 CSS position 属性设置为 relative、fixed 或 absolute!

提示:可以用 animate() 方法来操作所有 CSS 属性吗?

是的,几乎可以!不过,需要记住一件重要的事情:当使用 animate() 时,必须使用 Camel 标记法书写所有的属性名,比如,必须使用 paddingLeft 而不是 padding-left,使用 marginRight 而不是 margin-right,等等。

同时,色彩动画并不包含在核心 jQuery 库中。

如果需要生成颜色动画,您需要从 jQuery.com 下载 Color Animations 插件。

jquery的animate方法可以自定义动画,但是,只能针对数字类型的属性,如大小,高度,透明度等。

对于非数字类型如颜色,则不支持动画。所以,需要自行处理。

jqueryui 中增加个这个支持,可以供我们使用。

如果,只是需要颜色动画,可以不必要加载所有的jqueryui 文件。只需要它的一部分。

有高人将其独立出来了。

jquery.colorAnimations.js

    $(function() {
                /**
                 * jQuery 为大家提供三类九种动画效果
                 *  
                 * 自定义动画
                 */
            });
            
            function closed() {
                // 动画的参数分为两种类型
                // 字符串  slow normal fast
                // 数字 表示动画执行时间,单位是毫秒
//              $("#box").hide(1000);
                
                /**
                 * 渐变 透明度
                 */
//              $("#box").fadeOut(2000);

                /**
                 * 卷帘效果
                 */
                $("#box").slideUp(5000);
                
            }
            
            function show() {
//              $("#box").show(2000);
                
//              $("#box").fadeIn(2000);

                $("#box").slideDown(5000);

            }
            
            function toggle() {
//              $("#box").toggle(2000); //开关 触发器 有时关闭,没有时出现
                
//              $("#box").fadeToggle(2000);

                $("#box").slideToggle(5000)

            }
            
            function run() {
                $("#box2").animate({
                    "left": "200px",
                    "top" : "300px",
                    "heigth": "300px"
//                  "width": "80%"
                },5000,"swing",function() {
                    $("#box2").animate({
                        "left": "30px",
                        "top" : "30px",
                        "heigth": "200px",
                        "width": "500px"
                    },2000);
                });
            }
            
            $(function() {
                $("img").mouseenter(function() {
                    $(this).animate({
                        "top": "250px",
                        "height": "0px",
                        "opcity": "0"
                    },2000,function() {
                        $(this).attr("src","img/gb2.png");
                        $(this).animate({
                            "top": "50px",
                            "height": "500px",
                            "opcity": "1"
                        },2000)
                    });
                    
                    
                })
                
                
                
            });
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1.JQuery 基础 改变web开发人员创造搞交互性界面的方式。设计者无需花费时间纠缠JS复杂的高级特性。 1....
    LaBaby_阅读 4,925评论 0 1
  • 警告请使用 document.write() 仅仅向文档输出写内容。如果在文档已完成加载后执行 document....
    鹿守心畔光阅读 7,819评论 3 104
  • 通过jQuery,您可以选取(查询,query)HTML元素,并对它们执行“操作”(actions)。 jQuer...
    枇杷树8824阅读 3,895评论 0 3
  • 请记得在进行JQuery类库的运用时,加入JQuery类库,并且要保证先写文档就绪函数 $(document).r...
    Sunshinemm阅读 7,959评论 1 40
  • 文/逗逗,图/网络 腾讯新闻近日报道了一则新闻《9岁男孩因老师课上一句话,救了妈妈一条命》, (图为妈妈在医院治疗...
    遇见逗逗阅读 2,515评论 0 0

友情链接更多精彩内容