首页 > 解决方案 > 如何在 Chrome 扩展程序中以编程方式关闭 gmail 撰写对话框

问题描述

我已将撰写对话框中的“发送”按钮替换为“发送”按钮,并使用“Gmail API”发送电子邮件。

我能够发送电子邮件并得到回复。

现在为了使其更加用户友好,我想在发送电子邮件后关闭撰写对话框(类似地,当发送电子邮件时 Gmail 关闭对话框时)。但我无法这样做。

注意:当使用“Gmail API”成功发送电子邮件时,我也会删除该电子邮件的草稿。

更新:

使用 JQuery,我在对话框中得到“X”(关闭)元素,这是一个图像-

<img class="Ha" id=":2i" src="images/cleardot.gif" alt="Close" aria-label="Save &amp; Close" data-tooltip-delay="800" data-tooltip="Save &amp; Close">

我想触发一个点击事件,但它没有触发。

当我尝试在同一对话框的“放弃”按钮上触发点击事件时,它成功运行。这是丢弃按钮-

<div id=":68" class="oh J-Z-I J-J5-Ji T-I-ax7" tabindex="1" role="button" data-tooltip="Discard draft" aria-label="Discard draft" style="user-select: none;">

如何点击img标签?

标签: google-chrome-extensiongmail-api

解决方案


您可以使用收件箱 sdk的帮助。它完美地工作。

sdk.Compose.registerComposeViewHandler( (composeView) => {
    composeView.on('presending', function (event) {
        //do anything you want to
        composeView.close(); // this will close the compose window
})

在 gmail 发送邮件之前,您可以照常使用 gmail api 发送邮件,然后这将关闭撰写窗口并保存草稿。由于您已经集成了自己的发送按钮,因此您需要相应地使用库。


推荐阅读