TypeScript 3.7.7以降、TouchEventはlib.dom.dでサポートされています。TouchEventを参照してください。TypeScript 宣言をより完全に理解するには、TouchEventsW3C仕様に進む価値があります。
元の回答:アドバイスありがとうございます。私は2011年5月5日のタッチイベント仕様W3Cワーキングドラフトに行き、そこから一連のアンビエント宣言を作成しました。最近の推奨候補がありますが、これは実際にほとんどのブラウザに実装されていると思います。これはうまくいくようです。
PS:下部にあるdeclare var TouchEventは、w3cドラフトの一部ではありません。これは、TypeScriptに付属している標準インターフェースの一部であるUIEventの同じコードを適応させたものです。
interface Touch {
identifier:number;
target:EventTarget;
screenX:number;
screenY:number;
clientX:number;
clientY:number;
pageX:number;
pageY:number;
};
interface TouchList {
length:number;
item (index:number):Touch;
identifiedTouch(identifier:number):Touch;
};
interface TouchEvent extends UIEvent {
touches:TouchList;
targetTouches:TouchList;
changedTouches:TouchList;
altKey:bool;
metaKey:bool;
ctrlKey:bool;
shiftKey:bool;
initTouchEvent (type:string, canBubble:bool, cancelable:bool, view:AbstractView, detail:number, ctrlKey:bool, altKey:bool, shiftKey:bool, metaKey:bool, touches:TouchList, targetTouches:TouchList, changedTouches:TouchList);
};
declare var TouchEvent: {
prototype: TouchEvent;
new(): TouchEvent;
}