婷婷亚洲久悠悠色悠在线播放_天天爽夜夜爽人人爽一区二区_少妇群交换bd高清国语版_日韩不卡一区二区_欧美精品一二区_久久国产精品影视

18842388900

網站建設 APP開發 小程序

Article/文章

記錄成長點滴 分享您我感悟

您當前位置>首頁 > 知識 > 軟件開發

如何實現小程序動畫?小程序動畫的實現方法

發表時間:2019-05-20 08:50:29

文章來源:沈陽網站建設

標簽:小程序 css javascript

分享:

瀏覽次數:0

本篇文章給大家帶來的內容是介紹如何實現小程序動畫?小程序動畫的實現方法。有一定的參考價值,有需要的朋友可以參考一下,希望對你們有所幫助。

在普通的網頁開發中,動畫效果可以通過css3來實現大部分需求,在小程序開發中同樣可以使用css3,同時也可以通過api方式來實現。

API解讀

小程序中,通過調用api來創建動畫,需要先創建一個實例對象。這個對象通過wx.createAnimation返回,animation的一系列屬性都基于這個實例對象。

創建這個對象

    let animation = wx.createAnimation({        duration: 2000,        delay: 0,        timingFunction: "linear",    });

這個animation就是通過wx.createAnimation之后返回的實例。在創建過程中,可以給這個實例添加一些屬性,如以上代碼所示,等同于css3animation:$name 2s linear的寫法。

添加動效

實例創建完成之后,基于該實例,添加需要的動態效果,動態類型可以查閱文檔得知,以最常見的移動,旋轉為例:

    animation.translate($width, 0).rotate($deg);

結束動畫

.step()表示一組動畫的結束

    animation.step();

導出動畫

動畫效果添加完成了,如何給想要的dom添加動效呢。這里需要用到.export()導出動畫隊列,賦值給某個dom對象。

    this.setData({ moveOne: animation.export() })
    <view  animation="{{moveOne}}"></view>

例子

以下將通過2組動畫,來對比一下css3api實現方式的不同。

一、模塊移動動畫

動畫效果:

下圖有兩組動畫,分別為api方式(上)與css3方式(下)完成的效果,點擊move按鈕,動畫匯海。

1.gif

代碼實現

以下分別為css3api的核心代碼:

css3:

    <!-- wxml -->    <view class='border'>        <view class='css-block {{isMove && "one"}}'></view>        <view class='css-block {{isMove && "two"}}'></view>        <view class='css-block {{isMove && "three"}}'></view>        <view class=沈陽軟件制作

<a href=http://www.301gynobs.cn target=_blank class=infotextkey>沈陽<a href=http://www.301gynobs.cn target=_blank class=infotextkey>軟件開發</a></a>,<a href=http://www.301gynobs.cn target=_blank class=infotextkey>沈陽<a href=http://www.301gynobs.cn target=_blank class=infotextkey>軟件公司</a></a>

'css-block {{isMove && "four"}}'></view> </view>
    // scss    @mixin movePublic($oldLeft,$oldTop,$left,$top) {        from {          transform:translate($oldLeft,$oldTop);        }        to {          transform:translate($left,$top);        }    }        @mixin blockStyle($color,$name) {        background: $color;        animation:$name 2s linear infinite alternate;    }    .one {        @include blockStyle(lightsalmon,onemove);    }        @keyframes onemove {        @include movePublic(50rpx,-25rpx,-150rpx,0rpx);    }        .two {        @include blockStyle(lightblue,twomove);    }        @keyframes twomove {        @include movePublic(0rpx,25rpx,-50rpx,0rpx);    }        .three {        @include blockStyle(lightgray,threemove);    }        @keyframes threemove {        @include movePublic(0rpx,25rpx,50rpx,0rpx);    }        .four {        @include blockStyle(grey,fourmove);    }        @keyframes fourmove {        @include movePublic(-50rpx,-25rpx,150rpx,0rpx);    }
    // js    moveFunction(){        this.setData({            isMove: true        })    }

css3中通過動態改變class類名來達到動畫的效果,如上代碼通過one、two、three、four來分別控制移動的距離,通過sass可以避免代碼過于冗余的問題。

小程序,css,javascript

相關案例查看更多

主站蜘蛛池模板: 97久久精品无码一区二区欧美人 | 综合久久久久久久青青 | 久艹人人艹视频 | 人妻熟妇乱又伦精品HD | 出差被夫の上司持久侵犯在线观看 | 激情不卡一区二区三区视频在线 | 亚洲免费网站观看视频 | 天海翼精品一区二区三区 | 爱做久久久久久 | 9色自拍| 成人免费高潮片视频软件 | 成人福利一区 | 国产欧美日韩在线观看 | 久久精品国产亚洲AV蜜臀 | 国产真实夫妇对白视频 | 狠狠躁夜夜躁人人爽蜜桃 | 亚洲欧美日韩成人综合一区 | 亚洲欧美观看 | 色婷婷五月色综合AⅤ视频 午夜亚洲国产理论片 | av在线免费资源 | 国产+成+人+亚洲欧洲自线 | 青草草色A免费观看在线 | 欧美激情在线精品一区二区三区 | 亚洲免费一区三区 | 91cao在线| 亚洲伦乱视频 | 亚洲乱亚洲乱妇91p丰满 | 亚洲精品综合一二三区在线观看 | 一级片色 | 亚洲VA久久久噜噜噜久久天堂 | 中国三级在线 | 处女膜往事| 亚洲欧美日韩成人 | 日韩中文字幕在线视频观看 | 国产一区二区美女 | 亚洲精品高潮久久久久久久 | 欧美黄色大片在线观看 | 把腿张开老子cao烂你 | 国产成人无码短视频 | japanxxxx人女小hd| 干片网在线观看 |