jquery实现css3动画

  jquery animate改变元素样式时,只支持数字值的变化,比如width,height等,但是css3属性状态值很多都不是数字值,而是字符串和数字混合在一起,比如translate(), rotate()等等,如果要用animate使其支持css3变化,需要用到一个step参数,下面附上小demo:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <script type="text/javascript" src="js/jquery-1.12.0.js"></script>
    <style>
        .demo{
            width:100px;
            height:100px;
            border:1px solid red;
        }
    </style>
</head>
<body>
<button>sss</button>
    <div class="demo"></div>

    <script>
        var $elem,applyEffect;
        $elem=$(".demo");
        applyEffect=function($e,v){
            $e.css({
                ‘-webkit-transform‘: ‘translate3d(0px, ‘ +String(v)+ ‘px, 0px)‘
                , ‘-moz-transform‘: ‘translate3d(0px, ‘ +String(v)+ ‘px, 0px)‘
                , ‘transform‘: ‘translate3d(0px, ‘ +String(v)+ ‘px, 0px)‘
            });
        };
        applyEffect($elem, 100);
        $("button").click(function(){
            $(".demo").animate({
                foo:100
            },{
                step:function(now,fx){
                    //console.log(now); //当前正在改变的属性的实时值
                   //console.log(fx); //jquery默认动画队列的名字
                    //console.log(fx.elem); //执行动画的元素
                    //console.log(fx.prop);  //执行动画的属性    aa
//                    console.log(fx.now);  //正在改变属性的当前值
//                    console.log(fx.end);  //动画结束之   360
                    //console.log(fx.unit);  //改变的属性的单位  px
                    //$(".demo").css({"transform":"rotate("+now+"deg)"});
                    applyEffect($elem, 100-now);
                },
                duration:1000
            });
        });
    </script>
</body>
</html>

  现在animate第一个参数里,插入一个字段,给到设定好的目标值,然后在step里用css来通过前面给的字段,来动态模拟动画,通过这样间接的方式实现了animate对css3动画的支持.

时间: 2024-08-27 06:00:56

jquery实现css3动画的相关文章

10个web前端基于jQuery和css3动画插件及源码

1.jQuery横向手风琴图片展示插件 今天我们要来介绍一款非常酷的jQuery插件,它是一款横向的手风琴图片展示切换插件,每一张图片初始都是水平层叠在一起,点击图片后即可切换至下一张,并且在图片切换时出现水平移动的动画特效.另外你可以定义任意数量的图片应用在这个手风琴图片插件中. 在线演示 源码下载 2.纯css3实现的鼠标经过按钮特效 今天再给大家带来一款纯css3实现的鼠标经过按钮特效.这款按钮非常简单,但效果很好,非常漂亮. 在线演示 源码下载 3.FreeIconMaker - 在线创

jQuery插件css3动画模拟confirm弹窗

相比浏览器自带的alert.confirm,能力所及,我更喜欢所有的东西都是自定义:首先在head标签(当然喜欢其他地方自己看着办)内引入插件样式表和js.<link rel="stylesheet" href="css/WeiConfirm.css" />    —如果可以,可以自己修改UI<script type="text/javascript" src="js/jquery.js" ></

10款炫酷的jQuery和css3动画插件及源码

1.jQuery超酷平面时钟特效插件 这是一个非常具有创意的jQuery时钟插件,它不像其他的时钟插件一样是圆盘的或者是数字的,它是一个平面时钟,日期和时分秒的指针都是在平面上移动计时的,尽管这款jQuery平面时钟插件不能广泛应用,但是创意是绝对可以肯定的. 在线演示 源码下载 2.4款基于jquery的列表图标动画切换特效 网页中列表图标随处可见,特别是移动网页上,基本上的导航都采用了列表图标.今天给大家分享4款基于juqery的列表图标和关闭图标的动画切换特效. 在线演示 源码下载 3.随

CSS3/jQuery创意盒子动画菜单

作为前端开发者,各种各样的jQuery菜单见过不少,这款jQuery/CSS3菜单却是别具一格,菜单项嵌入到九宫格中,像小盒子一样,加上温馨的背景,菜单整体外观十分可爱.点击菜单项,盒子就会展开,展示该菜单项具体的内容.该CSS3菜单在展开时也有不错的动画效果. 在线演示源码下载 原文链接:http://www.html5tricks.com/css3-jquery-box-menu.html CSS3/jQuery创意盒子动画菜单,布布扣,bubuko.com

16款创建CSS3动画的jQuery插件

jQuery插件是用来扩展jQuery原型对象的方法. 本文搜集了用来为你的网站创建CSS3动画的一些jQuery插件. 1. jQuery Smoove Smoove 简化了CSS3转换效果,使得页面向下滚动时网页内容能有一种滑入的动效. 在线演示:http://wow.techbrood.com/fiddle/7 2. CSS3 Animate it 这个插件效果和Smoove类似. 3. WaitMe WaitMe 是用于创建加载CSS3动画的 jQuery 插件. 4. Stroll.j

一款jquery和css3实现的卡通人物动画特效

之前为大家分享了很多jquery和css3的动画实例.今天给大家带来一款非常炫的jquery和css3实现的卡通人物动画特效.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div class="wrapper"> <div class="border-circle" id="one"> </div> <div class="border-circle" id=&

用jQuery和css3实现的一个模仿淘宝ued博客左边的菜单切换动画效果

今天看到淘宝ued博客上左边的菜单导航动画效果不错,就用jQuery和css3做了一个简单的例子,主要是实现运用了jQuery 事件和css3 transition属性. 用一个元素来实现鼠标滑动到某个导航的背景效果,文字颜色也运用css3 transition 渐变的效果 当鼠标滑动其他导航的时候,加背景的元素的top值也会随着变化,定位到当前的导航上,同时文字字体颜色也会跟着改变: 主要实现的html代码如下: <div class="menuBox"> <div

10款jQuery/CSS3动画应用 超实用

http://www.html5tricks.com/10-jquery-css3-animation.html 10款jQuery/CSS3动画应用 超实用

CSS3+Jquery实现带动画效果的下拉选择框

CSS3+JQuery实现带动画效果的下拉选择框. 元素结构为: 1 <div class="box"> 2 <p>this is the first li</p> 3 <div id="blank"></div> 4 <ul> 5 <li class="selected">this is the first li</li> 6 <li >