问题标签 [wkwebviewconfiguration]

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 投票
1 回答
8262 浏览

javascript - 从使用 wk webview 返回值的 java 脚本调用 swift 函数

我想从返回脚本的 java 脚本代码中调用一个 swift 函数device id,我已经添加了当前使用的代码。请告知如何将值返回到java scriptswift 函数中,在此先感谢

代码片段:

0 投票
0 回答
639 浏览

ios - Swift 中具有基本身份验证的 WKWebView 完整示例

我一直在尝试将一个示例WKWebView与一个使用 Basic Auth 进行身份验证的站点放在一起。如果可能的话,我想使用 swift 。使用挑战的示例

这不会Base64向标头添加加密。它不需要吗?

任何帮助将不胜感激。

0 投票
1 回答
1548 浏览

ios - WKWebView:如何在 iOS8 中启用本地存储

我正在尝试启用本地存储。但是在iOS8中,我找不到怎么做。

0 投票
1 回答
861 浏览

ios - 从 WKWebView 调用时,无法使用 JavaScript 在移动 Safari 中打开链接

这篇文章这篇文章解决了在移动 Safari 中使用 JavaScript 打开 WKWebView 链接的问题,但由于某种原因,提供的解决方案不起作用。

下面的代码包含了不同解决方案的元素,但单击按钮后仍然无法打开链接。

事实上,webView(webView: WKWebView, decidePolicyForNavigationAction navigationAction: WKNavigationAction, decisionHandler: (WKNavigationActionPolicy)甚至userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage)不被调用。

HTML:

视图控制器:

0 投票
1 回答
1601 浏览

javascript - iOS:当参数包含换行符时,evaluateJavaScript 不会调用函数

目标是在包含在WKWebView.

evaluateJavaScript当其参数包含换行符时中断,这意味着永远不会调用回调函数。

为什么是这样?

userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage)当用户按下网页上的按钮时调用。

0 投票
1 回答
687 浏览

javascript - WKWebview javascript 适用于模拟器,但如果视图不在屏幕上,则不适用于设备

我正在使用 WKWebview 来运行 javascript 脚本。

我没有使用 JSContext et.al,因为我需要 javascript 上下文才能执行单独使用 JSContext 无法执行的 XHTTP 请求。

此视图未添加到视图层次结构中,我没有兴趣这样做。

WKWebview 仅用于在其引擎中运行 JS 代码的能力。

javascript 代码在模拟器上完全按照预期工作。

完全相同的代码也可以在我测试过的某些其他应用程序的上下文中工作。

但是由于某些原因,在某些应用程序中,除非将 WKWebview 添加到视图层次结构中,否则 WKWebview 不会执行 javascript。以下代码将按预期工作。如果删除 #warning 代码,则按预期停止工作

0 投票
1 回答
2214 浏览

ios - 在多个 WKWebView 之间共享会话

我需要实现计费逻辑。它会进行一些重定向,然后在新窗口中打开新框架——这就是它在网络浏览器上的工作方式。

我在 WKWebView 中显示计费框架。我抓住了它想要打开新框架(navigationAction.targetFrame.isNil)并要求 webView 加载新请求的时刻。正在加载新框架,但没有发生一些重定向,并且计费显示错误。看起来会话丢失了。

我尝试了另一种方式:在新的 webView 中加载新请求。当我初始化 webView 时,我通过前一个的 processPull,遵循这篇文章:https ://github.com/ShingoFukuyama/WKWebViewTips#cookie-sharing-between-multiple-wkwebviews问题没有解决。

0 投票
2 回答
5769 浏览

ios - WKWebView 从 NSHTTPCookieStorage 中选择 cookie

有谁知道如何设置 WKWebView 以从 NSHTTPCookieStorage 中选择 cookie?

我尝试通过 WKUserScript 注入 cookie,但它不起作用,因为我的页面有多个重定向,并且该重定向中的每个页面都使用一个 cookie。

有什么建议么?

0 投票
2 回答
14285 浏览

swift - 如何在自定义 UIView 中正确嵌入 WKWebView?

在我的项目中,我有一个视图控制器,我想在其中显示嵌入在另一个 UIView 中的 WKWebView,标题为 viewForEmbeddingWebView,这是我在故事板中创建的(图片为灰色)。

我的视图控制器中标题为 viewForEmbeddingWebView 的灰色视图

我已经在我的 ViewController 中实现了这个逻辑:

在模拟器中构建并运行后,我看到以下内容: 运行我的代码后

它显示了 WKWebView,但边界看起来不对(首先:它不适合 viewForEmbeddingWebView 的边界,其次:顶部有一个白色间隙)。我读过我必须在苹果网站https://developer.apple.com/reference/webkit/wkwebview上使用 WKWebView但他们的例子不是我的情况,因为他们只展示了如何处理加载 WKWebView 的情况ViewController 的整个视图。但我需要将它嵌入到另一个视图中,因为稍后我还需要围绕这个 WKWebView 的另一个 ui。在 WKWebView 之前有 WebView,但自从 iOS 8 出现后,我们必须使用 WKWebView。请帮忙,因为我检查了很多材料,但没有找到适用于 Swift 3 和 Xcode 8 的答案。

我在 iOS 10.2 中使用 Xcode 8 和 Swift 3。

0 投票
0 回答
577 浏览

cordova - Cordova Ionic 2 WKWebView 隐藏滚动条

我正在尝试使用 WKWebView 从我的 ionic 2 应用程序中删除所有滚动条

我可以使用标准 webview 用 css 隐藏它们,但是使用 WKWebView 时它不起作用。

我尝试使用以下内容编辑 CDVWKWebviewEngine.m 文件,但没有运气

wkWebView.scrollView.showsHorizontalScrollIndicator = NO; wkWebView.scrollView.showsVerticalScrollIndicator = NO; [wkWebView.scrollView setShowsHorizontalScrollIndicator:NO]; [wkWebView.scrollView setShowsVerticalScrollIndicator:NO]; wkWebView.scrollView.scrollIndicatorInsets = UIEdgeInsetsMake(30000, 0, 0, 10);