Javascript 在启用触摸功能的浏览器上创建和触发触摸事件?
为了测试特性,我试图在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
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);