首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >支持用户交互的Javascript

问支持用户交互的Javascript
EN

Stack Overflow用户
提问于 2012-07-07 21:01:22
回答 1查看 217关注 0票数 0

我正在编写一个Javascript应用程序,并将它包装在一个原生iOS应用程序中。我想在事件发生后的一两秒钟内阻止用户在包含JS应用程序的UIWebView上进行交互。

通常我会使用self.webView.userinteractionenabled = NO,但是这个事件是在Javascript中触发的。如何阻止用户与web视图交互?

在某种类型的触摸事件上猜测返回false?我想阻止的是滚动。

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-07 22:14:57

当事件在Javascript代码中发生时,您可以使用以下方法向本机包装器发送一条消息:

设置以下UIWebViewDelegate方法(不要忘记设置UIWebView的委托):

代码语言:javascript
复制
- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType {
   NSURL *url = [request URL];
   if ([[url scheme] isEqualToString:@"block"]) {
      // do the your blocking code here
      return NO;
   }

   return YES;
}

现在,当事件发生时,从javascript代码中调用委托方法:

代码语言:javascript
复制
window.location.href = "block://";
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11375209

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档