From 24c7156110b4ffbe18341c5328f548adaa201975 Mon Sep 17 00:00:00 2001 From: yu-shihao4 Date: Mon, 1 Aug 2022 16:42:07 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0ts-basic-components-web.md?= =?UTF-8?q?=EF=BC=8C=E6=96=B0=E5=A2=9EonContextMenuShow?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: yu-shihao4 --- .../arkui-ts/ts-basic-components-web.md | 125 ++++++++++++++++++ 1 file changed, 125 insertions(+) diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-web.md b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-web.md index 2cc6753eaa..9573f26ef9 100644 --- a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-web.md +++ b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-web.md @@ -1226,6 +1226,39 @@ onPermissionRequest(callback: (event?: { request: PermissionRequest }) => void) } ``` +### onContextMenuShow9+ + +onContextMenuShow(callback: (event?: { param: WebContextMenuParam, result: WebContextMenuResult }) => boolean) + +长按特定元素(例如图片,链接),跳出菜单。 + +**参数:** +| 参数名 | 参数类型 | 参数描述 | +| ------- | ------------------------------------ | ---------------- | +| param | [WebContextMenuParam](#webcontextmenuparam9) | 菜单相关参数。 | +| result | [WebContextMenuResult](#webcontextmenuresult9) | 菜单相应事件传入内核。 | + + **示例:** + ```ts + // xxx.ets + @Entry + @Component + struct WebComponent { + controller:WebController = new WebController(); + build() { + Column() { + Web({ src:'www.example.com', controller:this.controller }) + .onContextMenuShow((event) => { + console.info("x coord = " + event.param.x()); + console.info("link url = " + event.param.getLinkUrl()); + }) + }, + cancel: () => { + event.result.closeContextMenu(); + } + } + ``` + ## ConsoleMessage Web组件获取控制台信息对象。示例代码参考[onConsole事件](#onconsole)。 @@ -1680,6 +1713,98 @@ grant(resources: Array\): void | --------- | --------------- | ---- | ----- | ---------------------- | | resources | Array\ | 是 | - | 网页所请求的权限资源列表。| +## WebContextMenuParam9+ + +实现长按页面元素跳出来的菜单信息。示例代码参考[WebContextMenuParam事件](#webcontextmenuparam9)。 + +### x9+ + +x(): number + +弹出菜单的x坐标。 + +**返回值:** + +| 类型 | 说明 | +| --------------- | ----------------------- | +| int | 显示正常返回非负整数,否则返回-1。 | + +### y9+ + +y(): number + +弹出菜单的y坐标。 + +**返回值:** + +| 类型 | 说明 | +| --------------- | ----------------------- | +| int | 显示正常返回非负整数,否则返回-1。 | + +### getLinkUrl9+ + +getLinkUrl(): string + +获取linkurl链接。 + +**返回值:** + +| 类型 | 说明 | +| --------------- | ----------------------- | +| string | 如果长按位置是链接,返回链接经过安全检查的url。 | + +### getUnfilterendLinkUrl9+ + +getUnfilterendLinkUrl(): string + +获取linkurl链接。 + +**返回值:** + +| 类型 | 说明 | +| --------------- | ----------------------- | +| string | 如果长按位置是链接,返回链接的原始url。 | + +### getSourceUrl9+ + +getSourceUrl(): string + +获取sourceUrl链接。 + +**返回值:** + +| 类型 | 说明 | +| --------------- | ----------------------- | +| string | 如果选中的元素有src属性,返回src的url。 | + +### existsImageContents9+ + +existsImageContents(): boolean + +是否存在图像内容。 + +**返回值:** + +| 类型 | 说明 | +| --------------- | ----------------------- | +| boolean | 长按位置中有图片返回true,否则返回false。 | + +## WebContextMenuResult9+ + +实现长按页面元素跳出来的菜单所执行的响应事件。示例代码参考[WebContextMenuResult事件](#webcontextmenuresult9)。 + +### closeContextMenu9+ + +closeContextMenu(): void + +不执行WebContextMenuResult其他接口操作时,需要调用此接口关闭菜单。 + +### copyImage9+ + +copyImage(): void + +WebContextMenuParam有图片内容则复制图片。 + ## WebController 通过WebController可以控制Web组件各种行为。一个WebController对象只能控制一个Web组件,且必须在Web组件和WebController绑定后,才能调用WebController上的方法。 -- GitLab