このサイトは、只今WEB業界で活躍中のデザイナー、プログラマーの方々の情報を集めたweb統合情報サイトです。

Archives Details

Google Chrome v.44~ -webkit-transform → transformになってた。対応のまとめ。

JavaScript

2015.07.28

この記事は最終更新日から1年以上が経過しています。

「あれ。動かなくなっている。。」

数日前の出来事でした。

なんでだろう。。

と、chromeのバージョンアップに伴って、不具合が出始めたのもあって調べて見ると、

event.propertyName で取得できる「-webkit-transform」が → 「transform」になっているでは!

うはは。

-webkit-transform → transform と変更になって色々と不具合が出始めたので、フロント側の対応をまとめました。

CSS の対応

transformとかtransition系compassの@includeを利用していたので問題は特になかったのですが、

compassの古いバージョンを使っているのもあって、animationの@includeがない。。

-webkit-animation: anime-name 0.2s infinite;

@include animation(anime-name 0.2s infinite);

としたい。。。

と、いいのがありました ><

こちら、

https://github.com/ericam/compass-animation

https://github.com/ericam/compass-animation/blob/master/stylesheets/animation/_core.scss

もう、ナイスです!

https://github.com/ericam/compass-animation/blob/master/stylesheets/animation/_shared.scss

こちらも追加して、既存の_mixin.scssに追加。

サクッと置換

-webkit-animation:.(.*)\; 

@include animation($1); 

解決。

JavaScriptの対応

もちろんJavaScriptの方も影響が出ますよね。。

webkitTransitionEnd やら webkitAnimationEndで、結構イベント取得している。。。

Utilを追加致しました。

https://github.com/creatorish/support-util

ですが、ここのあたりとか

https://github.com/creatorish/support-util/blob/master/support-util.js#L42

vendor.transitionend = "webkitTransitionEnd";

決め打ちしちゃっていますので、このままではまずい。。

ということで、

http://davidwalsh.name/css-animation-callback

https://jonsuh.com/blog/detect-the-end-of-css-animations-and-transitions-with-javascript/

こちら等を参考に、イベント名を取得しました。

そうそう、webkitTransitionEnd等、直接取得出来ないので、ダミーのelement生成するこの方法は上手いですね!

で、こんな感じにマージを行い、

globalオブジェクトのUtilにadd。

deviceもいい感じにまとまっていましたので追加。

TransitionEnd、AnimationEnd、それぞれ、イベント名を取得することが出来ました。

これで、同じChromeでも、バージョン違いで、「animationend」「webkitAnimationEnd」となるのを吸収いたしました。

参考になればとー。

Comment

Related Article

Vue.jsでSPA、Vuex使用するなら Nuxt.jsが超絶便利な件。

2018.12.23

nodeのない環境にnodeを導入(HTML5ゲームも提供)し続け、1年数ヶ月経過後、かなり開発環境が整ってきたお話。

2018.09.26

Vue.js + SSR (Universal JavaScript)環境を、「NUXT.js」でサクッと構築する方法。

2017.10.09

フロントエンド開発が捗る JSON Serverについて

2017.07.10

技術書、参考書のしおりには【BOOK DARTS】がオススメ!

2017.07.01

会社で npm Private導入して、1ヶ月で8個ほどパッケージ作成したお話。

2017.06.02

Vue.js が予想以上に良かったので、既存WordPressに導入。Vue.js (vue-class-component) + TypeScript + WordPress で作る、記事読み込み component 「実装編」

2017.03.26

Vue.js が予想以上に良かったので、既存WordPressに導入。Vue.js (vue-class-component) + TypeScript + WordPress で作る、記事読み込み component 「環境構築編」

2017.02.21

Facebook製 JavaScript 関数ライブラリ。Immutable.js がいい感じ!

2016.07.31

【JS】フロントでレコメンドアルゴリズムを簡単実装できるJavaScriptライブラリ「RecommendJS」を公開しました。

2016.05.30

CATEGORY LIST

LATEST NEWS

あけましておめでとうございます(かなり遅め)

イベント

2019.01.12

Vue.jsでSPA、Vuex使用するなら Nuxt.jsが超絶便利な件。

JavaScript

2018.12.23

2018年 Docker 使い方 まとめ その3

Docker

2018.12.17

2018年 Docker 使い方 まとめ その2

Docker

2018.12.16

2018年 Docker 使い方 まとめ その1

Docker

2018.12.15

macOS Mojaveにアップデート vagrantで、failed MSpanList_Insert 0x1e3000 0x170f8379be41 0x0 エラー発生 vagrantが起動しない件

エラー

2018.12.15

まだ間に合う!!「RSコンポーネンツ」で、ラズベリーパイが 配送料無料で購入できるキャンペーン中!

RaspberryPi

2018.12.07

IntelliJ + Spring Initializr + Gradleで、サクッとSpring Boot環境を構築

Java

2018.11.24

Mavenを用いたアプリケーション作成方法

Java

2018.11.24

Gradleを用いたアプリケーション作成方法

Java

2018.11.23

Jenkins 認証情報「Jenkinsマスター上の~/.sshから」が表示しない

tool

2018.11.17

流れで、Raspberry Pi Zero WHを購入。気がつけばもうラズパイ4台。

RaspberryPi

2018.11.06

RANKING

Follow

SPONSOR

現在、掲載募集中です。



Links

About Us

WEBデザイナーの、WEBデザイナーによる、WEBデザイナーの為のサイト。「みんなで書こう!」と仲間を募ってみたが、結局書くのは自分だけとなってしまいました。日々のメモを綴っていきます。

Entry Profile

Graphical FrontEnd Engineer
- Daisuke Takayama

MAD CITY 北九州市で生まれ育つ。20代はバンド活動に明け暮れ、ふと「webデザイナーになりたい。」と思い、デジタルハリウッド福岡校入学。卒業後、数々の賞を受賞、web業界をざわつかせる。
現在、主に、ゲーム制作中心に港区六本木界隈で活動中。

FOLLOW US