【发布时间】:2013-11-07 12:38:18
【问题描述】:
我正在我的网页上创建一个自定义按钮,它实际上是一个<div>,我想在单击该按钮时触发一个 mailto。最好的出路是什么?
我尝试使用-onClick 调用一个 javascript 函数,看起来像这样 -
function foo(){
window.open("mailto:xyz@abc.com");
}
但这会首先在 Chrome 中打开一个新标签页,然后要求相关应用发送电子邮件。这种体验不同于我们通常在 HTML 中执行 <a href=mailto:.....> 时所获得的体验。
我也可以在JS函数中新建一个文档元素,像这样模拟点击-
function sendEmail() {
var mail = 'mailto:contact@test.com';
var a = document.createElement('a');
a.href = mail;
a.click();
};
但我不太确定这是否正确!谁有更好的解决方案?
【问题讨论】:
-
是否有任何理由使用
<div>而不是块<a>?你能改变标记/CSS吗? -
我很困惑,自定义是什么意思?您可以设置
<a>的样式,就像您可以设置<div>的样式一样,前提是您将其显示为块你有我可以参考的链接或小提琴吗?我的按钮也有图像,是的,页面由多个浮动元素组成,所以我不能使用块显示。如果你可以发布你的标记可能会更容易,那么我们可以看到你做错了什么
标签: javascript html mailto