问题标签 [wkwebview]
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.
ios - WKWebView 在将 html 和 javascript 与应用程序捆绑时给出 SecurityError
我们正在尝试将混合应用程序从 UIWebView (iOS < 8) 迁移到 WKWebView (iOS 8),但在尝试使用DOM WebDatabase API(即“web sql 数据库”)存储内容时出现 SecurityErrors。
如果 index.html 已从应用程序的捆绑文件中加载,则以下内容会引发错误
相同的代码适用于 UIWebView。出于某种原因,我可以回退到使用本地存储,但是使用 WebSQL 数据库是不行的。我只能推测这与同源政策或相关的东西有关。
有趣的是从网络加载 index.html 工作正常:-/
关于我如何解决这个问题的任何线索?在修复它的 WKWebView 上设置的任何选项?
这是我们加载网络相关内容的方式:
html 文件只是加载一个具有相对路径“myCode.js”的 javascript 文件。
ios - 为什么 WKWebView 不打开带有 target="_blank" 的链接?
WKWebView
不会打开任何target="_blank"
在其 HTML 标签中具有“在新窗口中打开”属性的链接<a href>
。
ios - 在 WKWebView 中使用自定义字体
我在我的应用程序中使用自定义字体。它们被复制到 bundle 并硬编码到 appName-info.plist。这种字体在整个应用程序和 UIWebView 中都能完美运行。
我正在加载 htmlString
[webView loadHTMLString:htmlString baseURL:nil];
我在 webView 中使用这个字体和 css:
fontFamily: fontName
但是当我尝试使用 WkWebView 自定义字体时不起作用。WkWebView 显示随机的默认字体。
我尝试使用基本 url 中的主包路径加载它,并在 css 中使用 font-face - WkWebView 仍然显示随机字体。
如何使自定义字体在 WKWebView 中工作?
uiwebview - 如何从 WKWebView 获取 JSContext
在 UIWebView 中,我可以JSContext
通过:
同样的方法在 WKWebView 中不起作用,当它到达这行代码时应用程序崩溃。
有没有办法在 WKWebView 中获取 JSContext?
提前致谢。
ios - 多个 WKWebView 之间的 Cookie 共享
我在我的应用程序中创建了一些 WkWebViews,但是当为一个 webview 设置 cookie 时,它们不会在其他 webview 中生效(即其他 webviews 不会将相同的 cookie 传递回服务器)。我怎样才能让他们都使用相同的 cookie 存储?
uiwebview - loadData:MIMEType:textEncodingName:baseURL: 在 WKWebView
我想使用WKWebView而不是 UIWebView 在 iOS 上显示数据。但是,似乎loadData:MIMEType:textEncodingName:baseURL:在 WKWebView 中被删除了。
有没有办法在 WKWEbView 中模仿这个功能?
谢谢!
ios - WKWebView 间歇性黑屏问题
我正在将 WKWebView 集成到我们的应用程序中。并看到各种问题。最烦人和阻塞的一个是间歇性黑屏。它可以触发我的很多事情,导航、缩放等。
当我检查 WKWebView 中的视图层次结构时,我可以看到很多子视图丢失了。当我连接检查器时,HTML 已正确加载。有时,我可以在控制台日志中看到一条消息:
我们已经向 Apple 提交了几个雷达。有没有人有类似的问题并找到了一个走动?
javascript - 如何在 WKWebView 中调试 javascript 代码
我在 WKWebView 中运行 web 应用程序时遇到了一些问题(特别是:某些按钮没有响应)。我使用本教程作为指南,并成功地让 webview 显示我的 webapp。所以现在我想调试javascript代码。
我知道 webapp 可以工作,因为我已经在 android webview 以及无数浏览器(包括我正在使用的 iPad 模拟器上的 safari)中尝试过它。经过一些快速的谷歌搜索,我发现了如何使用 Safari 在 UIWebView 中调试 javascript。可悲的是,这似乎不适用于新的 WKWebView。
当我导航到时,Develop->iPad Simulator
我被告知“没有可检查的应用程序”。我已经用一个带有 UIWebView 的简单应用程序尝试了同样的事情,并且通过 safari 进行调试可以在那里完美地工作。
有没有办法在 WKWebView 中调试 javascript 代码?
要重现我的问题(使用 swift),请在 xCode 6 中启动一个新的单屏项目,复制文件中下面提供的代码(由kinderas 提供)并将ViewController.swift
出口拖到文件中文档大纲的View
下方。如有混淆,请参阅我上面链接的教程。View Controller
Main.storyboard
ios - 包含 iOS8 的 WebKit 框架验证失败
我正在使用 WebKit 框架的 WKWebView 并尝试提交到应用商店时,我收到此错误:
如果我将部署目标设置为 8.0,那么错误就会消失,但我也想支持 iOS 7。该错误似乎是 iOS7 也具有 WebKit 框架的结果,但当时它是私有的。
因此,我想动态链接到 WebKit 库。我怎样才能在 XCode 中做到这一点?
ios - IOS:WKWebView中的文本选择(WKSelectionGranularityCharacter)
我有一个应用程序,它使用可以选择文本的网络视图。长期以来,您无法在 UIWebView 中跨块边界选择文本一直是一个烦恼。WKWebView 似乎通过其配置上的属性解决了这个问题:selectionGranularity
。可能的值之一是WKSelectionGranularityCharacter
:
选择端点可以放置在任何字符边界。
听起来很棒!正是我需要的。除了当我在我的网络视图中设置它时,我通常根本无法再选择文本。到底是怎么回事?还有什么我需要设置的吗?有没有人弄清楚这一点?
更新:我发现了以下错误:
当一个应用中有多个 WKWebView
selectionGranularity
设置为 时WKSelectionGranularityCharacter
,只有最近要加载的 WKWebView 才能选择文本。我已将此归档为错误 18441138。body
如果在设置为 WKSelectionGranularityCharacter的 WKWebView 的 HTML 内容中的元素上附加了一个单击处理程序selectionGranularity
,则文本选择在该元素内不起作用。我已将此归档为错误 18440833。在应用程序中的其他位置进入 UITextView 的编辑模式后,WKWebView 中的文本选择失败,直到 WKWebView 重新加载。我已将此归档为错误 18468405。
有没有人解决过这些问题?