停止发送电子邮件 [英] Stop Email From Sending

查看:119
本文介绍了停止发送电子邮件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在为Thunderbird编写附件,并且希望能够在某些情况下取消发送电子邮件.我有以下代码,可以让我在发送电子邮件之前执行代码,但是我不知道如何阻止它.

I am working on writing an add-on for Thunderbird and would like to be able to cancel the sending of an email under certain conditions. I have the following code which allows me to execute code before the email is sent, but I don't know how to stop it.

document.getElementById("msgcomposeWindow").addEventListener( "compose-send-message", function(){
  var msgcomposeWindow = document.getElementById( "msgcomposeWindow" );
  var msg_type = msgcomposeWindow.getAttribute( "msgtype" );

  // do not continue unless this is an actual send event
  if( !(msg_type == nsIMsgCompDeliverMode.Now || msg_type == nsIMsgCompDeliverMode.Later) )
      return;


  alert('Sending Message...');//works fine
  if(true){ //eventually this would have more logic...
    //stop email
  }else{
    //let email go
  }
}, true );

我该怎么做才能停止电子邮件?

What do I need to do to stop the email?

推荐答案

为了防止发送电子邮件,您需要防止事件冒泡:

In order to prevent the email from being sent you'd need to prevent the event from bubbling up:

function send_event_handler( evt ) {
    if(shouldStopEmail) {
        evt.preventDefault();
        return false;
    }
}

window.addEventListener( "compose-send-message", send_event_handler, true );

这篇关于停止发送电子邮件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆