源码网,源码论坛,源码之家,商业源码,游戏源码下载,discuz插件,棋牌源码下载,精品源码论坛

 找回密码
 立即注册
楼主: ttx9n

[HTML/Xhtml] 谈html mailto(电子邮件)实际应用

[复制链接]

7万

主题

861

回帖

32万

积分

论坛元老

Rank: 8Rank: 8

积分
329525
发表于 2012-12-24 09:38:21 | 显示全部楼层 |阅读模式
大家知道,mailto是网页设计制作中的一个非常实用的html标签,许多拥有个人网页的朋友都喜欢在网站的醒目位置处写上自己的电子邮件地址,当点击时就能自动打开当前计算机系统中默认的电子邮件客户端软件,对于能够联系到我们很有帮助 大家知道,mailto是网页设计制作中的一个非常实用的html标签,许多拥有个人网页的朋友都喜欢在网站的醒目位置处写上自己的电子邮件地址,这样网页浏览者一旦用鼠标单击一下由mailto组成的超级连接后,就能自动打开当前计算机系统中默认的电子邮件客户端软件,例如OutLook Express以及Foxmail等。

但是由于各操作系统和邮件客户端对 mailto 事件连接的处理不一致,所以在实际应用的时候需要注意;

1.基本语法

<a href=mailto:test@163.com>send email</a>

或者  

<form action="mailto:test@163.com">

</form>

参数列表:

to 收信人(多个之间用;分割)
suject 主题
cc 抄送
bcc 暗抄送
body 内容(部分邮件客户端支持html格式语句)

参数传递方式同页面之间传递值一样,可以使用链接字符串,也可以用form

链接字符串

<a href="mailto:test@163.com?subject=testtitle&cc=test@126.com&body=this is body">send mail</a>

form方式

复制代码代码如下:
<form name='sendmail' action='mailto:test@163.com'>
<input name='cc' type='text' value='test@hotmail.com'>
<input name='subject' type='text' value='testtitle'>
<input name='body' type='text' value='this is body'>
</form>

2.邮件客户端区别

上面是mailto的简单语法应用;但在实际应用中 根据浏览器设置的浏览器客户端不同,会有不用效果;

尤其是在body 内容包含html 格式的语句时候,这时候需要注意;

outlook 是对body 的html 语句原样展示(对body的html 进行 escape 后也是同样的无效),那么我们在outlook mailto 时候想body 里面的语句换行怎么办 呢?<br/> 是没有效果的。。需要用 %0D 字符作为换行符号;

foxmail 是会对body的html 语句展示其html 对应的效果;

当然也可以换另一种方式,实现类型mailto的客户端发送邮件:

复制代码代码如下:
function SendMail(filePath) {
var path = location.href.substring(0, location.href.lastIndexOf("/")) + filePath;
var outlookApp = new ActiveXObject("Outlook.Application");
var nameSpace = outlookApp.getNameSpace("MAPI");
var mailItem = outlookApp.CreateItem(0);
var mailto = "test@163.com ";
var mailBody= "<HTML><BODY><DIV><FONT color=‘red’>test this is body html</FONT></DIV></BODY></HTML>";
mailItem.Subject = "test title";
mailItem.To = mailto;
mailItem.HTMLBody = mailBody;
if (path != "") {
mailItem.Attachments.Add(path);
}
mailItem.Display(0);
mailItem = null;
nameSpace = null;
outlookApp = null;
}

但是这个有个很大的缺点是:仅仅支持outlook 客户端,需要对Internet选项进行配置,”对没有标记为安全的ActiveX控件进行初始化和脚本运行“要启用。

其中调用mailItem的Attachments.Add是向邮件中添加附件,没有附件的时候就可以把filePath这个参数删掉。

如果需要添加抄送对象,可以调用mailItem.Cc,若是需要添加一个暗送对象可以调用mailItem.Bcc方法。
回复

使用道具 举报

29

主题

2万

回帖

194

积分

注册会员

Rank: 2

积分
194
发表于 2022-8-13 17:29:32 | 显示全部楼层
先把创新班才能下班才能下班
回复 支持 反对

使用道具 举报

0

主题

1万

回帖

0

积分

中级会员

Rank: 3Rank: 3

积分
0
发表于 2022-12-13 08:40:57 | 显示全部楼层
那三门,你们谁寂寞才快乐撒
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

55

积分

注册会员

Rank: 2

积分
55
发表于 2023-1-9 14:22:18 | 显示全部楼层
刷屏刷屏刷屏
回复 支持 反对

使用道具 举报

0

主题

1万

回帖

68

积分

注册会员

Rank: 2

积分
68
发表于 2023-5-18 22:22:21 | 显示全部楼层
谢谢楼主分享
回复 支持 反对

使用道具 举报

2

主题

2万

回帖

221

积分

中级会员

Rank: 3Rank: 3

积分
221
发表于 2023-8-28 09:52:03 | 显示全部楼层
挺不错的东西
回复 支持 反对

使用道具 举报

1

主题

2万

回帖

182

积分

注册会员

Rank: 2

积分
182
发表于 2023-9-15 07:28:07 | 显示全部楼层
大家都不容易!
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

186

积分

注册会员

Rank: 2

积分
186
发表于 2023-10-9 14:25:37 | 显示全部楼层
需要很久了终于找到了
回复 支持 反对

使用道具 举报

2

主题

2万

回帖

69

积分

注册会员

Rank: 2

积分
69
发表于 2024-5-1 12:04:31 | 显示全部楼层
啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦啦
回复 支持 反对

使用道具 举报

3

主题

2万

回帖

294

积分

中级会员

Rank: 3Rank: 3

积分
294
发表于 2024-5-13 12:59:13 | 显示全部楼层
我找了挺久终于找到了
回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

手机版|小黑屋|网站地图|源码论坛 ( 海外版 )

GMT+8, 2024-11-23 16:55 , Processed in 0.066053 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表