页面中除了传统的超链接外,还可以将邮箱地址写入<a>标签,意思不表自明,当然是用户点击后就会打开相应的邮件客户端向这个连接指向的邮件地址发邮件。
<a href="mailto:liuwayong@gmail.com" target="_blank">liuwayong@gmail.com</a>
效果:
了解邮件连接
一般情况下,如果你的浏览器之前有设置过 mailto: 协议的话,它会启动mailto协议里指定的程序来打开这个邮件链接。
比如我的Chrome浏览器里设置为使用Gamil,那么单击后,会自动打开Gamil页面,并且把收件人地址填好了。
另外,如果你在连接中传了subject 参数,或者还有其他参数,邮箱页面打开后,相应位置的内容会从参数当中去取,然后自动填上。
下面是完整参数的列表:
参数 | 描述 |
---|---|
mailto:name@email.com | 收件人邮箱 |
cc=name@email.com | 抄送邮箱 |
bcc=name@email.com | 匿名抄送邮箱 |
subject=subject text | 邮件主题 |
body=body text | 邮件正文 |
? | 首个参数分隔符 |
& | 其余参数的分隔符 |
下面是一个带完整参数的例子:
<a href="mailto:sample@test.com?Subject=Test%20Mail&cc=mail1@test.com&bcc=mail2@test.com&body=Dear%20Mary" target="_top">Send Mail</a>
浏览器里出来的效果:
设置Chrome接管mailto协议
如果你点击上面的测试连接无法打开Gmail,说明你的Chrome没有设置好用来接管处理mailto协议。
下面进行设置:
1. 在浏览器地址栏输入chrome://settings/ 回车来到浏览器设置页面
2.搜索 'protocol handlers'
3.根据搜索结果来到协议管理设置页面,将其中的mailto 设置为你想要的处理程序,这里是Gmail.
4. 一路确定下去,然后在浏览器输入“mailto:” 回车进行测试,会自动转到Gmail页面
如果在第三步发现页面没有mailto协议及可选的操作怎么办?通过JavaScript来进行巧妙地设置。
1. 打开Gmail页面
2.把如下代码粘贴到浏览器地址栏
javascript:navigator.registerProtocolHandler("mailto","https://mail.google.com/mail/?extsrc=mailto&url=%s","Gmail")
*注意代码前面要有 'javascript:'。通常在Chrome浏览器里,将上面的代码粘贴到地址栏后,前面的'javascript:'会被自动去掉,所以需要手动补上。
3. 回车确定后会出现
4.同样输入mailto:后测试页面是否跳转到Gmail页面,如果跳转,说明设置成功。
Reference:
1 .http://productforums.google.com/forum/#!topic/chrome/sPhxiTQlf4s