亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

章節
問答
課簽
筆記
評論
占位
占位

轉身與logo效果

轉身效果與慕課logo的效果都是通過css3的animation動畫實現的

人物轉身

具體代碼調用部分:通過定時器模擬一個暫停的時間,這樣感覺人物會有一個等待轉身的效果

setTimeout(function() {
    girl.rotate();
    boy.rotate(function() {
        //開始logo動畫
        logo.run()
    });
}, 1000)

girl與boy都增加一個rotate的方法。這是通過增加一個rotate的樣式調用CSS3動畫,我們在pageC文件中找到對應的rotate樣式

-webkit-animation-name: girl-rotate;
-webkit-animation-duration: 850ms;
-webkit-animation-iteration-count: 1;
-webkit-animation-timing-function: step-start;
-webkit-animation-fill-mode: forwards;

定義了一個keyframes的規則,原理同樣也是通過position不斷更換幀圖的坐標,這里會有一個animation-fill-mode的屬性,forwards的意思就是保留在最終的狀態,也就是我們轉身后的最終狀態

在轉身以后還會繼續執行其他的動畫,那么轉身動作到底多久可以完成?雖然這個動畫是850ms的運行時間,但是為了保證精確,一般采用事件監聽的方法處理

boy.rotate方法傳遞一個回調,內部通過jQuery.on方法監聽一個動畫結束的事件,轉身動畫結束后會調用這個回調函數

$boy.on(animationEnd, function() {
   callback()
   $(this).off();
})

慕課網Logo

loge動畫處理的原理與rotate是一樣的,區別就是logo是2組CSS3的animation動畫組成。這里需要注意的,不能同時給一個元素增加2個CSS3的關鍵幀動畫,所以需要一個結束后,在增加下一個,這里需要通過事件監聽的方式處理

代碼調用部分:

this.elem.addClass('logolightSpeedIn')
    .on(animationEnd, function() {
        $(this).addClass('logoshake').off();
    })

增加一個logolightSpeedIn的類執行一個動畫,等待這個動畫結束后,在增加一個logoshake的動畫,具體的關鍵幀的寫法,可以參考下源碼部分

任務

在代碼編輯器pageC.css樣式文件中第370、374行補充代碼,使慕課網logo出現左右晃動的效果。

0%, 100% {
    -moz-transform: translate3d(0, 0, 0);
}
10%,
30%,
50%,
70%,
90% {
    -moz-transform: translate3d(-5px, 0, 0);
}
20%,
40%,
60%,
80% {
    -moz-transform: translate3d(10px, 0, 0);
}
?不會了怎么辦
||

提問題

寫筆記

公開筆記
提交
||

請驗證,完成請求

由于請求次數過多,請先驗證,完成再次請求

加群二維碼

打開微信掃碼自動綁定

您還未綁定服務號

綁定后可得到

  • · 粉絲專屬優惠福利
  • · 大咖直播交流干貨
  • · 課程更新,問題答復提醒
  • · 賬號支付安全提醒

收藏課程后,能更快找到我哦~

使用 Ctrl+D 可將課程添加到書簽

邀請您關注公眾號
關注后,及時獲悉本課程動態

舉報

0/150
提交
取消
全部 精華 我要發布
全部 我要發布
最熱 最新
只看我的

手記推薦

更多

本次提問將花費2個積分

你的積分不足,無法發表

為什么扣積分?

本次提問將花費2個積分

繼續發表請點擊 "確定"

為什么扣積分?