如何在 Web 视图中启用弹出窗口?
How to enable pop up in Web View?
目前正在应用程序中使用 "react-native-webview": "^6.11.1"
。加载网站时,会弹出一个需要批准的窗口。我如何 enable/allow webview 显示弹出窗口?
尝试了一些东西:
- 将属性
useWebKit
设置为 TRUE (WkWebview) 和 FALSE (UIWebview)
- 将每个 URL
的属性 onShouldStartLoadWithRequest
设置为 return true
更具体地说,当您在桌面 运行 上 Chrome 时,我提到的 pop 如下所示 。应该有一个弹出窗口阻止程序通知,要求您允许弹出窗口。
TLDR;
在方法didMoveToWindow
下的RNCWKWebView.m
中追加以下代码
wkWebViewConfig.preferences.javaScriptCanOpenWindowsAutomatically = YES;
wkWebViewConfig.preferences.javaScriptEnabled = YES;
顺便说一句,我正在使用 WKWebView。
说明
这里的关键是 javaScriptCanOpenWindowsAutomatically 根据 Apple docs
实际上设置为 NO 作为 iOS 的默认值
The default value is NO in iOS and YES in macOS.
将此值设置为 YES,表示 JavaScript 是否可以在没有用户交互的情况下打开 windows。在这种情况下,我正在处理我网站 javascript 中的 window.open()
函数。
我在 Android 和 IOS
上工作
javaScriptCanOpenWindowsAutomatically=true,
<WebView
javaScriptCanOpenWindowsAutomatically=true,
source={{ uri: URL }}
/>
目前正在应用程序中使用 "react-native-webview": "^6.11.1"
。加载网站时,会弹出一个需要批准的窗口。我如何 enable/allow webview 显示弹出窗口?
尝试了一些东西:
- 将属性
useWebKit
设置为 TRUE (WkWebview) 和 FALSE (UIWebview) - 将每个 URL 的属性
onShouldStartLoadWithRequest
设置为 return true
更具体地说,当您在桌面 运行 上 Chrome 时,我提到的 pop 如下所示 。应该有一个弹出窗口阻止程序通知,要求您允许弹出窗口。
TLDR;
在方法didMoveToWindow
RNCWKWebView.m
中追加以下代码
wkWebViewConfig.preferences.javaScriptCanOpenWindowsAutomatically = YES;
wkWebViewConfig.preferences.javaScriptEnabled = YES;
顺便说一句,我正在使用 WKWebView。
说明
这里的关键是 javaScriptCanOpenWindowsAutomatically 根据 Apple docs
实际上设置为 NO 作为 iOS 的默认值The default value is NO in iOS and YES in macOS.
将此值设置为 YES,表示 JavaScript 是否可以在没有用户交互的情况下打开 windows。在这种情况下,我正在处理我网站 javascript 中的 window.open()
函数。
我在 Android 和 IOS
上工作javaScriptCanOpenWindowsAutomatically=true,
<WebView
javaScriptCanOpenWindowsAutomatically=true,
source={{ uri: URL }}
/>