提交 463893b1 编写于 作者: Z zhufenghao

【web】新增allowWindowOpenMethod接口doc仓描述

Signed-off-by: Nzhufenghao <zhufenghao2@huawei.com>
上级 cf310f23
......@@ -1211,6 +1211,54 @@ struct WebComponent {
}
```
### allowWindowOpenMethod<sup>9+</sup>
allowWindowOpenMethod(flag: boolean)
设置网页是否可以通过JavaScript自动打开新窗口。
该属性为true时,可通过JavaScript自动打开新窗口。该属性为false时,用户行为仍可通过JavaScript自动打开新窗口,但非用户行为不能通过JavaScript自动打开新窗口。此处的用户行为是指用户在5秒内请求打开新窗口(window.open)。
该属性仅在[javaScriptAccess](#javascriptaccess)开启时生效。
该属性在[multiWindowAccess](#multiwindowaccess9)开启时打开新窗口,关闭时打开本地窗口。
该属性的默认值与系统属性persist.web.allowWindowOpenMethod.enabled 保持一致,如果未设置系统属性则默认值为false。
检查系统配置项persist.web.allowWindowOpenMethod.enabled 是否开启。
通过`hdc shell param get persist.web.allowWindowOpenMethod.enabled` 查看,若配置项为0或不存在,
可通过命令`hdc shell param set persist.web.allowWindowOpenMethod.enabled 1` 开启配置。
**参数:**
| 参数名 | 参数类型 | 必填 | 默认值 | 参数描述 |
| ------ | ------- | ---- | ----- | ------------------ |
| flag | boolean | 是 | 默认值与系统参数关联,当系统参数persist.web.allowWindowOpenMethod.enabled为true时,默认值为true, 否则为false | 网页是否可以通过JavaScript自动打开窗口。 |
**示例:**
```ts
// xxx.ets
import web_webview from '@ohos.web.webview'
@Entry
@Component
struct WebComponent {
controller: web_webview.WebviewController = new web_webview.WebviewController()
@State access: boolean = true
@State multiWindow: boolean = true
@State flag: boolean = true
build() {
Column() {
Web({ src: 'www.example.com', controller: this.controller })
.javaScriptAccess(this.access)
.multiWindowAccess(this.multiWindow)
.allowWindowOpenMethod(this.flag)
}
}
}
```
## 事件
不支持通用事件。
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册