0

ブラウザーがタッチ イベントをサポートしているかどうかを検出し、クリック イベントを持つすべての要素でタッチ イベントを設定するこの JavaScript があります。

function isTouchEnabled() {
    if ('ontouchstart' in window) {
    var all = document.querySelectorAll('[onclick]');
        for (var i = 0; i < all.length; i++) {
            all[i].setAttribute('ontouchstart', car);
            var car = all[i].getAttribute('onclick');
        }
    }
}

これは、このビットまで機能します。all[i].setAttribute('ontouchstart', car);

このビットで、クリック イベントからタッチ イベントに属性値を運ぶことを目的としましたが、タッチ イベントの属性値が未定義になってしまうため、うまくいきません。誰でもこれを解決できますか?

4

1 に答える 1

1

これを試して:

function hitMe() {
    alert('I am hit !');
}
function isTouchEnabled() {
  if ('ontouchstart' in window) {
    var all = document.querySelectorAll('[onclick]');
    for (var i = 0; i < all.length; i++) {
      var car = all[i].getAttribute('onclick');
      all[i].setAttribute('ontouchstart', car);
    }
  }
}
isTouchEnabled();
<div onclick="hitMe()">Click Me!</div>

于 2015-09-05T19:33:25.547 に答える