问题标签 [uiwebviewdelegate]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
10275 浏览

javascript - 如何让 UIWebView 专注于表单输入并调出键盘?

我创建了一个 UIWebView 用于登录 Facebook 的 Graph API OAuth 接口。这很好用,但我必须点击第一个输入字段才能弹出键盘。理想情况下,一旦表单出现,键盘就会出现。所以我一直试图弄清楚如何让第一个表单字段从webViewDidFinishLoad:UIWebViewDelegate 方法中获得焦点,如下所示:

唉,这行不通。奇怪的是,当我在 Firefox JavaScript 控制台中运行该 JavaScript 时,它确实将焦点移到了电子邮件字段。但是,当我在 Mac 的 Safari 中运行它时,它什么也不做,就像在 iOS 上一样。FWIW,alert(document.getElementsByName('email')[0]) 确实表明它选择了一个 HTMLInputElement。那么为什么focus()在 iOS 或 Mac OS X 中什么都不做呢?

0 投票
5 回答
47984 浏览

ios - 如何删除 UIWebView 的所有 cookie?

在我的应用程序中,我有一个UIWebview加载linkedin auth 登录页面。当用户登录时,cookie 会保存到应用程序中。

我的应用程序有一个与linkedin 登录无关的注销按钮。因此,当用户单击此按钮时,他会从应用程序中注销。我希望此注销也会从应用程序中清除他的linkedin cookie,以便用户完全注销。

0 投票
1 回答
31602 浏览

javascript - UIWebView stringByEvaluatingJavaScriptFromString

我坚持让一些非常基本的 JS 在我的 UIWebView 中运行。在网络视图的代表中,我有:

但是当调用该方法时, someHTML 为 nil 而 allHTML 包含 webview 中 HTML 的整个主体。

我已经在 Safari JS 控制台中运行了 JS,它工作得很好(它找到了一个 'box' 类的 div,所以我知道它在 HTML 中)

有什么建议么?

更多信息:

FWIW,导致以下每个结果也是 nil

0 投票
2 回答
652 浏览

iphone - 如何确定何时移除 UIWebView 模态视图?

我有一个 UITableView ,当按下一个单元格时,会显示一个加载视图,而 UIWebView 加载其内容(mp3 文件)。当 UIWebView 开始加载时,它会向上推其模态视图。这部分工作正常——加载视图一直显示,直到模态控制器向上推。

问题是我找不到任何类型的方法(Web 视图委托、viewDidAppear 等)来确定模式视图何时关闭,因此我可以在返回 tableview 时删除加载视图。当模态视图关闭时,用户仍然可以看到加载视图。

我尝试过的事情:

1) 尝试使用 webViewDidFinishLoad,但它从未被调用。(不会在 mp3 上调用?)

2) 删除 webViewDidStartLoad 上的加载视图——问题是用户在继续加载时看着白屏,这有点俗气,我试图避免它。

3)将 UIWebView 放在它自己的 UIViewController 中并将其视图的 alpha 设置为 0。(想法是看不到白色视图并继续看到加载屏幕,直到模态视图出现,然后可能会捕获 viewDidX 方法。)

本质上,我想要 tableview -> loading screen -> webview modal view -> tableview (不存在加载屏幕)。

我唯一能想到的另一件事是在模式视图的“完成”按钮上创建一个不可见的按钮,并使用它来确定 web 视图何时关闭。

想法或建议?

谢谢,

约翰

0 投票
1 回答
5815 浏览

iphone - 在 UIWebView 中单击时,shouldStartLoadWithRequest 不加载链接

我已经开始使用 shouldStartLoadWithRequest 并且在我理解的情况下遇到了令人费解的行为。以最简单的形式,我尝试了以下...

当我单击 HTML 链接时,链接不会在 UIWebView 中加载新页面。很可能我在这里不完全理解某些东西。任何反馈/帮助将不胜感激。

0 投票
1 回答
862 浏览

iphone - 如何知道uiwebview的进度

我有一个网页视图,它可以访问一个有 3 或 4 个框架的网站。我无法找到页面加载的真正结束。有没有办法准确地找出网页下载的进度?

0 投票
2 回答
1321 浏览

ios4 - 如何在 iPhone 应用程序的 UIWebView 中启用“全选”?

我正在编写一个嵌入 UIWebView 的 iPhone 应用程序。有各种类似 Safari 的功能,如导航等。我正在寻找的任务之一是当用户在 Web 视图上选择一段文本时显示“全选”选项。目前,我只看到一个“复制”选项。有没有一种简单的方法来启用“全选”菜单项?我当然尝试将菜单项添加到共享菜单控制器,但这并不一定实现原始的 safari“全选”功能。任何帮助和指示都会非常有用。

提前致谢。

0 投票
1 回答
129 浏览

cocoa-touch - WebView 对我的 tapGesture 没有反应怎么可能?

“我有一个应用程序,我有六个 Web 视图来显示内容,
我已经通过 GestureRecognizer 对所有这些内容进行了触摸事件操作,但它无法获取操作可能
是什么问题,所以 Web 视图没有” t 捕捉手势事件?”

非常感谢提前

0 投票
1 回答
5937 浏览

ios - 在 UIWebView 中打开一个弹出窗口并将一个值检索到开启器

我正在开发一个 iPad 应用程序来加载网页(ERP)并使用它。这里的问题是我无法修改网页代码(大型网站... 1000 页或更多),但我们使用了所有网站搜索组件,这些组件会打开新窗口,您可以在其中选择一个值并将其返回给开启者窗户。

打开一个新的 uiwebview 不是这里的问题,问题是当用户选择一个值时甚至没有调用 webview 委托,所以我无法找到检索它的方法。

我已经尝试了几种方法...我试图覆盖 javascript window.open 以在框架中加载新页面,但我也无法使其工作。

有人知道吗?

0 投票
0 回答
1340 浏览

iphone - 强制 UIWebView 内的 JQuery Mobile 页面调用 webViewDidStartLoad

在我的 iPhone 应用程序中,我有以下层次结构:

在 UIViewControllers navigationItem 中,我添加了一个按钮,其操作选择器是 UIWebViews goBack-function。当按下按钮时,一切都按计划进行 - UIWebView 向后导航(包括花哨的 jQuery Mobile 转换)。

问题是,由于 jQuery Mobile 在导航到不同页面时使用某种“内部链接”(将 #the/newPage/url.html 添加到 URL),所以当页面在同一个 jQuery 中时,永远不会调用 UIWebViewDelegate 函数 webViewDidStartLoad移动驱动的网站正在加载。

有人对如何使 jQuery Mobile 页面触发委托功能有任何建议吗?可能保持过渡。如果这是不可能的,是否有人对任何其他能够做到这一点的“网络应用程序框架”(委托调用+转换)有建议?

谢谢!

更新

也许我的问题与stackoverflow 上的这个问题几乎相同,但我至少认为我的问题更具体一些。如果您不同意,请发表评论:)