ontouchstart, ontouchmove, ontouchend
は存在しない。
console.log(onmousedown); // => null
console.log(ontouchstart); // => Uncaught Error: 'ontouchstart' is not defined
当然、代入してもタッチイベントは取れない。
// マウスで左クリックする時のイベント
addEventListener('mousedown', function() { console.log('new mouse'); });
// 古いやり方(非推奨だが、可能)
onmousedown = function() { console.log('old mouse'); };
// スマホなどでタップする時のイベント
addEventListener('touchstart', function() { console.log('new touch'); });
// 古いやり方も可能かと思いきや、不 可 能
ontouchstart = function() { console.log('old touch'); };
ちなみにこの例では一貫してグローバルオブジェクト(window)だったが、
documentでも個別のHTML要素でも同様に無効である。
たとえ書き捨て目的でもサボらずaddEventListenerを使おう。