是否有可能破解mailto?

时间:2013-07-10 13:47:03

标签: html-email email-integration mailto

对于这个具有挑衅性的主题感到抱歉,但我想不出一个比“黑客”更好的词来描述我想做的事情!

在我的网站上,我提供了指向其他网站的链接,并根据用户的要求,在框架或弹出窗口中显示该网站的页面。这些显示的页面经常有一个mailto-tag。

我发现单击mailto链接从我的Outlook开始,我不再使用它,但将其保留为我机器上已安装的程序,这一点非常烦人。

我想做的是:

1)拿起mailto标签的主题和电子邮件地址部分。 2)弹出一个HTML表单,其中预先填写了电子邮件地址和主题。 3)通过我网站的邮件服务器发送电子邮件,而不是通过outlook或任何其他邮件客户端。

有办法做到这一点吗?

提前感谢您 - 再次为挑衅的主题道歉!

干杯!

乌塔姆

2 个答案:

答案 0 :(得分:0)

使用javascript尝试。

使用像jQuery这样的框架很容易在框架或弹出窗口中找到这样的标签。 您可以通过以下方式尝试:

var allATags = $('myFrameId').find('a');
$(allATags).each(function(index, element){
    var href = $(element).attr('href');
    //here you shall try to find out if there a mailto Link or a normal link, e.g. using regular expression or indexOf()
    [...]
    if (isMailToLink){
        //split the href String at the signs '&' with which the subject, mail, etc is splitted and removing the mailto, putting all in own variables
        [...]
        $(element).attr('href', 'javascript:void(0);');
        $(element).click(function(){
           showMyMailForm(toMail, mailSubject, mailBody);
        });
    }
});

在框架或弹出窗口中打开文档等待加载的文档,然后运行代码以使用mailform-mailer替换该文档上的所有现有mailto-links。

代码只是一种尝试启发的方式,没有工作代码。

答案 1 :(得分:0)

用户可以设置他们的默认电子邮件客户端,以下是一些可能有用的链接:

当然这是由用户控制的,因此它会对您个人有所帮助,但不会强迫他人使用特定程序。

您可以轻松地将网址参数传递到您的联系人登录页面/电子邮件表单而不是mailto链接,类似href="http://landingpage.com/index.php?email=you@you.com&subject=hello"的内容可用于预填充通用联系人/电子邮件表单字段。