質問: new ScrollMagic.Scene({ triggerElement: $section[i], triggerHook: 'onEnter', reverse: false, offset: 300 }) .addTo(controller); scene.on('enter', ()=>{ $section[i].classList.add(this.ANIMATION_CLASS); }); scene.on('end', ()=>{ scene.destroy(true); }); } } } new ScrollFade(); ```
回答: ECMAScriptのブラウザ対応表というものがあってですね。 まぁ見れば分かりますが、ES6はIE11ではほぼ全滅です。 letとconstのみはIE11でもいけるんですけどね。 さぁどうすればよいか? ES5時代のJSってのもチューリング完全な訳で、その気になればES6と同じ事は出来るはずですよね。 ES5は構文が少ないので余計なおまじないが増えて煩わしいってだけの話で... JSコンパイラが存在して、機械的に読み取って実行してくれるって事は、ES6をES5に変換するようなツールもあるのでは? →あります。 Babel これはES6準拠のコードを読み取ってES5相当にダウングレードしてくれるツールです。 普段のコードは最新のESで書いておいて、デプロイ直前でES5相当に変換するという使い方になります。 クラス構文やlet、constみたいなのを変換するのはBabel純正で可能ですが、 Array.prototype.findみたいにES6で追加されたメソッドなんかはポリフィルというので利用可能になります。 Qiita等のブログでサンプルコードや使い方はわかると思いますので、 まずは調べてあれこれ変換してみてください。