談html mailto(電子郵件)實(shí)際應(yīng)用
發(fā)布時(shí)間:2012-12-24 09:38:21 作者:佚名
我要評(píng)論

大家知道,mailto是網(wǎng)頁(yè)設(shè)計(jì)制作中的一個(gè)非常實(shí)用的html標(biāo)簽,許多擁有個(gè)人網(wǎng)頁(yè)的朋友都喜歡在網(wǎng)站的醒目位置處寫(xiě)上自己的電子郵件地址,當(dāng)點(diǎn)擊時(shí)就能自動(dòng)打開(kāi)當(dāng)前計(jì)算機(jī)系統(tǒng)中默認(rèn)的電子郵件客戶(hù)端軟件,對(duì)于能夠聯(lián)系到我們很有幫助
大家知道,mailto是網(wǎng)頁(yè)設(shè)計(jì)制作中的一個(gè)非常實(shí)用的html標(biāo)簽,許多擁有個(gè)人網(wǎng)頁(yè)的朋友都喜歡在網(wǎng)站的醒目位置處寫(xiě)上自己的電子郵件地址,這樣網(wǎng)頁(yè)瀏覽者一旦用鼠標(biāo)單擊一下由mailto組成的超級(jí)連接后,就能自動(dòng)打開(kāi)當(dāng)前計(jì)算機(jī)系統(tǒng)中默認(rèn)的電子郵件客戶(hù)端軟件,例如OutLook Express以及Foxmail等。
但是由于各操作系統(tǒng)和郵件客戶(hù)端對(duì) mailto 事件連接的處理不一致,所以在實(shí)際應(yīng)用的時(shí)候需要注意;
1.基本語(yǔ)法
<a href=mailto:test@163.com>send email</a>
或者
<form action="mailto:test@163.com">
</form>
參數(shù)列表:
參數(shù)傳遞方式同頁(yè)面之間傳遞值一樣,可以使用鏈接字符串,也可以用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.郵件客戶(hù)端區(qū)別
上面是mailto的簡(jiǎn)單語(yǔ)法應(yīng)用;但在實(shí)際應(yīng)用中 根據(jù)瀏覽器設(shè)置的瀏覽器客戶(hù)端不同,會(huì)有不用效果;
尤其是在body 內(nèi)容包含html 格式的語(yǔ)句時(shí)候,這時(shí)候需要注意;
outlook 是對(duì)body 的html 語(yǔ)句原樣展示(對(duì)body的html 進(jìn)行 escape 后也是同樣的無(wú)效),那么我們?cè)趏utlook mailto 時(shí)候想body 里面的語(yǔ)句換行怎么辦 呢?<br/> 是沒(méi)有效果的。。需要用 %0D 字符作為換行符號(hào);
foxmail 是會(huì)對(duì)body的html 語(yǔ)句展示其html 對(duì)應(yīng)的效果;
當(dāng)然也可以換另一種方式,實(shí)現(xiàn)類(lèi)型mailto的客戶(hù)端發(fā)送郵件:
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;
}
但是這個(gè)有個(gè)很大的缺點(diǎn)是:僅僅支持outlook 客戶(hù)端,需要對(duì)Internet選項(xiàng)進(jìn)行配置,”對(duì)沒(méi)有標(biāo)記為安全的ActiveX控件進(jìn)行初始化和腳本運(yùn)行“要啟用。
其中調(diào)用mailItem的Attachments.Add是向郵件中添加附件,沒(méi)有附件的時(shí)候就可以把filePath這個(gè)參數(shù)刪掉。
如果需要添加抄送對(duì)象,可以調(diào)用mailItem.Cc,若是需要添加一個(gè)暗送對(duì)象可以調(diào)用mailItem.Bcc方法。
但是由于各操作系統(tǒng)和郵件客戶(hù)端對(duì) mailto 事件連接的處理不一致,所以在實(shí)際應(yīng)用的時(shí)候需要注意;
1.基本語(yǔ)法
<a href=mailto:test@163.com>send email</a>
或者
<form action="mailto:test@163.com">
</form>
參數(shù)列表:
to | 收信人(多個(gè)之間用;分割) |
suject | 主題 |
cc | 抄送 |
bcc | 暗抄送 |
body | 內(nèi)容(部分郵件客戶(hù)端支持html格式語(yǔ)句) |
鏈接字符串
<a href="mailto:test@163.com?subject=testtitle&cc=test@126.com&body=this is body">send mail</a>
form方式
復(fù)制代碼
代碼如下:<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.郵件客戶(hù)端區(qū)別
上面是mailto的簡(jiǎn)單語(yǔ)法應(yīng)用;但在實(shí)際應(yīng)用中 根據(jù)瀏覽器設(shè)置的瀏覽器客戶(hù)端不同,會(huì)有不用效果;
尤其是在body 內(nèi)容包含html 格式的語(yǔ)句時(shí)候,這時(shí)候需要注意;
outlook 是對(duì)body 的html 語(yǔ)句原樣展示(對(duì)body的html 進(jìn)行 escape 后也是同樣的無(wú)效),那么我們?cè)趏utlook mailto 時(shí)候想body 里面的語(yǔ)句換行怎么辦 呢?<br/> 是沒(méi)有效果的。。需要用 %0D 字符作為換行符號(hào);
foxmail 是會(huì)對(duì)body的html 語(yǔ)句展示其html 對(duì)應(yīng)的效果;
當(dāng)然也可以換另一種方式,實(shí)現(xiàn)類(lèi)型mailto的客戶(hù)端發(fā)送郵件:
復(fù)制代碼
代碼如下: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;
}
但是這個(gè)有個(gè)很大的缺點(diǎn)是:僅僅支持outlook 客戶(hù)端,需要對(duì)Internet選項(xiàng)進(jìn)行配置,”對(duì)沒(méi)有標(biāo)記為安全的ActiveX控件進(jìn)行初始化和腳本運(yùn)行“要啟用。
其中調(diào)用mailItem的Attachments.Add是向郵件中添加附件,沒(méi)有附件的時(shí)候就可以把filePath這個(gè)參數(shù)刪掉。
如果需要添加抄送對(duì)象,可以調(diào)用mailItem.Cc,若是需要添加一個(gè)暗送對(duì)象可以調(diào)用mailItem.Bcc方法。
相關(guān)文章
- HTML表格用于在網(wǎng)頁(yè)上展示數(shù)據(jù),通過(guò)標(biāo)簽及其相關(guān)標(biāo)簽來(lái)創(chuàng)建,表格由行和列組成,每一行包含一個(gè)或多個(gè)單元格,單元格可以包含文本、圖像、鏈接等元素,本文將詳細(xì)介紹HTML表格2025-03-12
- 本文介紹了三種禁止HTML頁(yè)面滾動(dòng)的方法:通過(guò)CSS的overflow屬性、使用JavaScript的滾動(dòng)事件監(jiān)聽(tīng)器以及使用CSS的position:fixed屬性,每種方法都有其適用場(chǎng)景和優(yōu)缺點(diǎn),感興2025-02-24
使用HTML和CSS實(shí)現(xiàn)文字鏤空效果的代碼示例
在 Web 開(kāi)發(fā)中,文本的視覺(jué)效果是提升用戶(hù)體驗(yàn)的重要因素之一,通過(guò) CSS 技巧,我們可以創(chuàng)造出許多獨(dú)特的效果,例如文字鏤空效果,本文將帶你一步一步實(shí)現(xiàn)一個(gè)簡(jiǎn)單的文字鏤空2024-11-17Html去除a標(biāo)簽的默認(rèn)樣式的操作代碼
在Html中,a標(biāo)簽?zāi)J(rèn)的超鏈接樣式是藍(lán)色字體配下劃線(xiàn),這可能不滿(mǎn)足所有設(shè)計(jì)需求,如需去除這些默認(rèn)樣式,可以通過(guò)CSS來(lái)實(shí)現(xiàn),本文給大家介紹Html去除a標(biāo)簽的默認(rèn)樣式的操作代碼2024-09-25HTML文本域如何設(shè)置為禁止用戶(hù)手動(dòng)拖動(dòng)
在HTML中,可以通過(guò)設(shè)置CSS的resize屬性為none,來(lái)禁止用戶(hù)手動(dòng)拖動(dòng)文本域(textarea)的大小,這種方法簡(jiǎn)單有效,適用于大多數(shù)現(xiàn)代瀏覽器,但需要在老舊瀏覽器中進(jìn)行測(cè)試以確保2024-09-25如何通過(guò)HTML/CSS 實(shí)現(xiàn)各類(lèi)進(jìn)度條的功能
本文詳細(xì)介紹了如何利用HTML和CSS實(shí)現(xiàn)多種風(fēng)格的進(jìn)度條,包括基礎(chǔ)的水平進(jìn)度條、環(huán)形進(jìn)度條以及球形進(jìn)度條等,還探討了如何通過(guò)動(dòng)畫(huà)增強(qiáng)視覺(jué)效果,內(nèi)容涵蓋了使用HTML原生標(biāo)簽2024-09-19HTML中Canvas關(guān)鍵知識(shí)點(diǎn)總結(jié)
Canvas 提供了一套強(qiáng)大的 2D 繪圖 API,適用于各種圖形繪制、圖像處理和動(dòng)畫(huà)制作,可以幫助你創(chuàng)建復(fù)雜且高效的網(wǎng)頁(yè)圖形應(yīng)用,這篇文章主要介紹了HTML中Canvas關(guān)鍵知識(shí)點(diǎn)總結(jié)2024-06-03html table+css實(shí)現(xiàn)可編輯表格的示例代碼
本文主要介紹了html table+css實(shí)現(xiàn)可編輯表格的示例代碼,主要使用HTML5的contenteditable屬性,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)2024-03-06HTML中使用Flex布局實(shí)現(xiàn)雙行夾批效果
本文主要介紹了HTML中使用Flex布局實(shí)現(xiàn)雙行夾批效果,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)2024-02-22HTML+CSS實(shí)現(xiàn)炫酷登錄切換的項(xiàng)目實(shí)踐
在網(wǎng)站開(kāi)發(fā)中,登錄頁(yè)面是必不可少的一部分,本文就來(lái)介紹一下HTML+CSS實(shí)現(xiàn)登錄切換,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需2024-02-02