我在 UIWebView 中使用 touchend 事件如下:
window.ontouchend=function(touchEvent)
{
...
}
我用它来跟踪 UIWebView 内的滚动,这个事件通常在 iOS 5+ 中工作,但这个事件在 iOS 4 中不起作用!如何在 iOS 4 的 javascript 中跟踪 touchend 事件?
预先感谢您的帮助。
我在 UIWebView 中使用 touchend 事件如下:
window.ontouchend=function(touchEvent)
{
...
}
我用它来跟踪 UIWebView 内的滚动,这个事件通常在 iOS 5+ 中工作,但这个事件在 iOS 4 中不起作用!如何在 iOS 4 的 javascript 中跟踪 touchend 事件?
预先感谢您的帮助。
我没有找到在 iOS 4 中使用此 JS 代码的方法所以我决定将此代码留给 iOS 5,但对于早期的 iOS 版本,我从这个问题中做出了决定: How to intercept touches events on a MKMapView or UIWebView objects ?
在我的 viewController 中,我编写了以下代码:
NSString *sysVersion=[[UIDevice currentDevice] systemVersion];
NSArray *sysVersionParse=[sysVersion componentsSeparatedByString:@"."];
int versionNum=[[sysVersionParse objectAtIndex:0] intValue]; //detect ios version
if (versionNum<5)
{
WildcardGestureRecognizer * tapInterceptor = [[WildcardGestureRecognizer alloc] init];
tapInterceptor.touchesEndCallback = ^(NSSet * touches, UIEvent * event)
{
NSString *jsString = [[NSString alloc] initWithFormat:@"window.ontouchend();"];
[webview stringByEvaluatingJavaScriptFromString:jsString];
};
//and similarly for the other touch actions
[webview addGestureRecognizer:tapInterceptor];
}
我希望有人能派上用场!