0

なぜこのボタンは機能しないのですか?それはデスクトップやアンドロイド上で正常に動作します。 clickHandlerが通常の関数として定義されている場合は、iosで動作します。ios addEventListenerが機能しない

http://codepen.io/CalebEverett/pen/RRmYgx

<html> 
    <head> 
     <style> 
      button { 
       width: 150px; 
       height 50px; 
      } 
     </style> 
    </head> 
    <body> 
     <div id="testdiv">it doesn't work</div> 
     <button id="do">Button</button> 
    </body> 
    <script> 
     const clickHandler =() => { 
      document.getElementById("testdiv").innerHTML = "it works!" 
     } 
     document.getElementById("do").addEventListener("click", clickHandler, false); 
    </script> 
<html> 
+0

あなたはこれを飛ばしているのですか、これはブラウザに送信している実際のコードですか?多くのデスクトップブラウザとAndroidブラウザでは、これもサポートされません。 – jcaron

+1

あなたはおそらく、それが単語、BTWを理解していないことを伝える良いエラーメッセージをコンソールに持っています。 – jcaron

+0

https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Functions/Arrow_functions#Browser_compatibilityによると、まだ機能はまだ広くサポートされていません。 – jcaron

答えて

1

あなたはES6機能ですarrow functionを、使用しています。

一般的な矢印機能のサポートはまだ普及しておらず、一部のブラウザの最新バージョンに限定されています。具体的には、Safariはデスクトップ(Mac)またはモバイル(iOS)の矢印機能をサポートしていませんが、他の多くのブラウザでも同じ問題が発生します(古いAndroidブラウザやIEなど)。

あなたのES6コードは、より広くサポートされているものに置き換えるか、より標準的なJavascriptに固執する必要があります。

+0

お返事ありがとうございます。 https://kangax.github.io/compat-table/es6/とhttps://babeljs.io/も有用なリソースでした。 –

関連する問題