更新
TypeScript 1.5.3 added declarations for HTML Touch events to lib.d.ts
我可以看到它支持uievent,但似乎没有用于触摸事件的接口。
此代码指示“ToucEvices不存在于当前作用域中”。

class Touchy {
    private _element:Element;

    constructor(theElement:Element) {
        this._element = theElement;

        theElement.addEventListener("touchstart", (theTouchEvent:TouchEvent) => alert("touchy"));
    }
}

我可以使用uievent,但不能使用touchevent。如何使用typescript处理touchEvent?谢谢。

最佳答案

这里有几种选择:
第一个选项:扩展uievent以拥有您在touch event上期望的成员(并且仅在touch事件侦听器中使用它们):

interface UIEvent {
    targetTouches: { pageX: number; pageY: number; }[];
    // etc...
}

第二个选项:定义自己的ToucEvices接口并在绑定事件时添加类型断言
interface TouchEvent {
    (event: TouchEventArgs): void;
}

interface TouchEventArgs {
    targetTouches: { pageX: number; pageY: number; }[];
    // etc
}

 theElement.addEventListener("touchstart", <UIEvent>((theTouchEvent:TouchEvent) => alert("touchy")));

09-19 19:32