ios - WKWebView中的蒙版图像受CORS限制

标签 ios objective-c wkwebview

this跟进。我的iOS应用程序资源中有一个黑白PNG图像。我在一段生成的HTML中使用它,该HTML显示在WKWebView中:

[MyWebView loadHTMLString: TheHTML baseURL: NSBundle.mainBundle.resourceURL];
当我将图像指定为和背景时,它将加载并按预期显示:
.x {
display:inline-block;
background-image:url(r.png);
width:24px;
height:24px;
}
当我将相同的图像指定为掩码时,该元素显示为空白,就好像没有掩码一样:
.x {
display:inline-block;
-webkit-mask: url(r.png);
mask: url(r.png);
width:24px;
height:24px;
background-color:#000000;
}
如果将内容另存为HTML文件,将其与CSS和图像一起放入Web文件夹,然后使用移动Safari加载,则掩码将按预期工作。由此得出的结论是,球体本身还可以。
当我使用Safari的检查器连接到模拟器中的WKWebView并加载页面时,在控制台中收到了CORS错误消息:

无法加载资源:Access-Control-Allow-Origin不允许使用Origin null。

归档应用程序资源文件夹的来源不应该与HTML字符串的来源相同吗?从资源文件夹加载JavaScript和其他图像没有问题。

最佳答案

解除了here的把戏:

[MyWebView.configuration.preferences setValue: @YES forKey:@"allowFileAccessFromFileURLs"];
这并非完全重复,因为另一个问题与XHR有关。这一新功能是WKWebView对文件系统中的蒙版图像的处理与样式表,背景和脚本的处理不同。
在iOS 9..13上测试。
更新:在iOS 8.x上抛出NSUnknownKeyException!还没有复制它,但是我看到了崩溃报告。

关于ios - WKWebView中的蒙版图像受CORS限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62143941/

相关文章:

ios - 应用程序可以范围内的 iBeacon 的最大数量

objective-c - Swift 中的外部变量

ios - 在 WebView 中加载 url 时获取 NSURLErrorUnsupportedURL(错误代码 -1002)

ios - 如何使用 Swift 为 WKWebView 安装插件?

ios - 如何在 WKWebView 中支持授权 token ?

javascript - 为什么 window.close 不适用于多个窗口

ios - 标识符为 ... 的应用程序组不可用。请输入不同的字符串

ios - UITableViewCell Z 顺序

objective-c - UITableViewCell 上的 SIG_ABRT 删除

ios - NSJSON 序列化错误?