vue動態(tài)綁定animation-name與未能實現(xiàn)的隨機幀動畫

起因

書接上文粪摘,一通操作搞出來的three動畫被否決之后為了追趕進度我又馬不停蹄的開始重做動畫枯芬。原本以為平面動畫應該很容易的,沒想到還是出了點問題碰辅。對于不同文字進行平移動畫懂昂,我覺得展現(xiàn)出一種雜亂無章的效果比較好,首先我采用了一種比較簡單的實現(xiàn)方法:列出3-4種動畫乎赴,然后給文字動態(tài)綁定動畫名稱忍法,結果出了點問題潮尝。

代碼

    <div
      class="qccenter-text"
      v-for="(item, index) in config.drgs"
      :key="`drgs-${index}`"
      :style="textItemStyle(item, index)"
    >
      {{item.name}}
    </div>
  computed: {
    // 文字塊樣式
    textItemStyle() {
      return function(item, index) {
        const { left, top } = item;
        const nameIndex = index % 4;
        return {
          left, 
          top, 
          'animation': `textMove${nameIndex} 4s linear infinite`,
        };
      };
    }
  },

css動畫示例榕吼,后面的只是每個時間點y軸坐標不同

@keyframes textMove0 {
  0% {
    transform: translateY(0);
  }
  20% {
    transform: translateY(20%);
  }
  50% {
    transform: translateY(0);
  }
  75% {
    transform: translateY(-20%);
  }
  100% {
    transform: translateY(0);
  }
}

config.drgs里面每一項保存文字的定位信息和內(nèi)容,然后給每一項添加不同的動畫——通過綁定不同的動畫名來實現(xiàn)勉失,然而動畫并沒有生效羹蚣。


瀏覽器上顯示animation屬性已經(jīng)綁定上去了,而且name也是正確的

image.png

原因

經(jīng)過一番查找資料發(fā)現(xiàn)是scoped在作怪乱凿,這個不知道是vue的bug還是特性就是如此顽素,要修改animation-name 就必須要在data-v-xxxx這個scoped下修改或者把動畫放到全局,最終我還是在全局樣式中寫入了動畫幀徒蟆,這下綁定的樣式終于生效了胁出,可惜代碼不優(yōu)雅。

原本我的設想是動態(tài)傳入動畫的位置段审,或者能在同一套動畫中設置不同元素的初始幀全蝶,結果看了一下api完全不知道從哪里下手,到最后我還是寫了4套動畫樣式然后如上所述取模來動態(tài)分配動畫名了。

后記

用threejs做動畫做了整整4天抑淫,純css動畫最后就用了半天绷落,果然熟悉而簡單的東西用起來還是得心應手。最后又得吐槽一下百度始苇,這搜索結果和google完全就不在一個檔次的好嗎砌烁。

參考內(nèi)容

Why are CSS keyframe animations broken in Vue components with scoped styling?

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
禁止轉(zhuǎn)載,如需轉(zhuǎn)載請通過簡信或評論聯(lián)系作者催式。
  • 序言:七十年代末函喉,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子荣月,更是在濱河造成了極大的恐慌函似,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,324評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件喉童,死亡現(xiàn)場離奇詭異撇寞,居然都是意外死亡,警方通過查閱死者的電腦和手機堂氯,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,356評論 3 392
  • 文/潘曉璐 我一進店門蔑担,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人咽白,你說我怎么就攤上這事啤握。” “怎么了晶框?”我有些...
    開封第一講書人閱讀 162,328評論 0 353
  • 文/不壞的土叔 我叫張陵排抬,是天一觀的道長。 經(jīng)常有香客問我授段,道長蹲蒲,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,147評論 1 292
  • 正文 為了忘掉前任侵贵,我火速辦了婚禮届搁,結果婚禮上,老公的妹妹穿的比我還像新娘窍育。我一直安慰自己卡睦,他們只是感情好,可當我...
    茶點故事閱讀 67,160評論 6 388
  • 文/花漫 我一把揭開白布漱抓。 她就那樣靜靜地躺著表锻,像睡著了一般。 火紅的嫁衣襯著肌膚如雪乞娄。 梳的紋絲不亂的頭發(fā)上瞬逊,一...
    開封第一講書人閱讀 51,115評論 1 296
  • 那天檐迟,我揣著相機與錄音,去河邊找鬼码耐。 笑死追迟,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的骚腥。 我是一名探鬼主播敦间,決...
    沈念sama閱讀 40,025評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼束铭!你這毒婦竟也來了廓块?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 38,867評論 0 274
  • 序言:老撾萬榮一對情侶失蹤契沫,失蹤者是張志新(化名)和其女友劉穎带猴,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體懈万,經(jīng)...
    沈念sama閱讀 45,307評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡拴清,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,528評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了会通。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片口予。...
    茶點故事閱讀 39,688評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖涕侈,靈堂內(nèi)的尸體忽然破棺而出沪停,到底是詐尸還是另有隱情,我是刑警寧澤裳涛,帶...
    沈念sama閱讀 35,409評論 5 343
  • 正文 年R本政府宣布木张,位于F島的核電站,受9級特大地震影響端三,放射性物質(zhì)發(fā)生泄漏舷礼。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,001評論 3 325
  • 文/蒙蒙 一技肩、第九天 我趴在偏房一處隱蔽的房頂上張望且轨。 院中可真熱鬧浮声,春花似錦虚婿、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,657評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至屉符,卻和暖如春剧浸,著一層夾襖步出監(jiān)牢的瞬間锹引,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,811評論 1 268
  • 我被黑心中介騙來泰國打工唆香, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留嫌变,地道東北人。 一個月前我還...
    沈念sama閱讀 47,685評論 2 368
  • 正文 我出身青樓躬它,卻偏偏與公主長得像腾啥,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子冯吓,可洞房花燭夜當晚...
    茶點故事閱讀 44,573評論 2 353

推薦閱讀更多精彩內(nèi)容

  • 一倘待、相對于其他框架相比 1、相對于Angular 1.1组贺、相對于angular的api凸舵,vue的api更簡單,...
    我寄你的信總要送往郵局閱讀 845評論 0 4
  • 一失尖、 簡介:(為什么使用vue) 1啊奄、 與angular相比優(yōu)點: a) api簡單,快速上手掀潮,學習成本低增热; b)...
    薇itvipkc閱讀 388評論 0 0
  • 這篇筆記主要包含 Vue 2 不同于 Vue 1 或者特有的內(nèi)容,還有我對于 Vue 1.0 印象不深的內(nèi)容胧辽。關于...
    云之外閱讀 5,048評論 0 29
  • 一峻仇,vue是什么? Vue.js(讀音 /vju?/, 類似于view) 是一套構建用戶界面的漸進式框架邑商。與其他重...
    不成才的IT狗閱讀 3,143評論 0 31
  • 一摄咆,vue是什么? Vue.js(讀音 /vju?/, 類似于view) 是一套構建用戶界面的漸進式框架人断。與其他重...
    米塔塔閱讀 822評論 2 15