Javascript 在启用触摸功能的浏览器上创建和触发触摸事件?

Javascript 在启用触摸功能的浏览器上创建和触发触摸事件?,javascript,javascript-events,Javascript,Javascript Events,为了测试特性,我试图在javascript中触发触摸事件来模拟用户交互。我尝试了以下代码片段: try { var targetElement = document.elementFromPoint(55, 155); console.log(targetElement); var evt = document.createEvent('UIEvent'); evt.initTouchEvent('touchstart', true, true); ev

为了测试特性,我试图在javascript中触发触摸事件来模拟用户交互。我尝试了以下代码片段:

try {
    var targetElement = document.elementFromPoint(55, 155);
    console.log(targetElement);
    var evt = document.createEvent('UIEvent');
    evt.initTouchEvent('touchstart', true, true);

    evt.view = window;
    evt.altKey = false;
    evt.ctrlKey = false;
    evt.shiftKey = false;
    evt.metaKey = false;

    targetElement.dispatchEvent(evt);
} catch (except){
    alert(except);
}
上述代码引发异常“TypeError:表达式“evt.initTouchEvent[undefined]”的结果不是函数

有人能指出我做错了什么吗?

根据,
TouchEvent
是UIEvent的一个子类。试着像这样创建它:

var evt = document.createEvent('TouchEvent');
更改:

evt.initTouchEvent('touchstart', true, true);
致:


为我工作的chrome nightly build

尝试过,但仍然是相同的例外。UIEvent对象是创建的,无论我使用单数还是复数。我现在没有设备来测试它。明天将进行测试和更新。@Ashu AFAIK Android模拟器中有一个移动WebKit。
evt.initUIEvent('touchstart', true, true);