Javascript 如何识别触摸事件并控制UIWebView中的脚本对象?

Javascript 如何识别触摸事件并控制UIWebView中的脚本对象?,javascript,iphone,uiwebview,controls,touch,Javascript,Iphone,Uiwebview,Controls,Touch,情况: 我有一个包含UIWebView的UIView。 当调用viewdiload时,调用UIWebView中的Javascript对象(Microsoft Seadragon AJAX JS) 请谅解: Seadragon加载一个指定的百万像素图像(JPEG),在Firefox这样的桌面浏览器中,我可以放大图像,我可以从中间向左拖动裁剪 在iPhone模拟器(适用于iPad)中,只有一次点击即可实现缩放功能,但当我尝试拖动裁剪时(用鼠标左键点击并按住),我拖动的是整个UIWebView,当然不

情况: 我有一个包含UIWebView的UIView。 当调用
viewdiload
时,调用
UIWebView
中的Javascript对象(Microsoft Seadragon AJAX JS)

请谅解: Seadragon加载一个指定的百万像素图像(JPEG),在Firefox这样的桌面浏览器中,我可以放大图像,我可以从中间向左拖动裁剪

在iPhone模拟器(适用于iPad)中,只有一次点击即可实现缩放功能,但当我尝试拖动裁剪时(用鼠标左键点击并按住),我拖动的是整个
UIWebView
,当然不是裁剪

这是模拟器无法处理的功能还是年轻人的特点

特别感谢


注:调用Seadragon的缩放功能时有点抖动。这与iPad的真实性能相符,还是模拟器没有iPad的功能?

您可以通过包含以下javascript来防止在UIWebView中滚动:

document.addEventListener("touchmove", touchMove, false);

function touchMove(event) {
    event.preventDefault();
}

在禁用滚动的情况下,javascript应该接收正常的mousemove事件。

Ok,什么应该等于元素?是否应将其插入UIWebView的loadHTMLstring方法中?谢谢哎呀。复制粘贴错误。您可以在文档对象上添加EventListener。我编辑了我的答案。在很多情况下,模拟器会比设备快。模拟器不是仿真的,它是用桌面系统的全部资源(ram、视频卡、内核)运行本机代码。