以下是我的代码:
function email(from, to, subject, body){
if(subject == "Website Feedback"){
to = to + "; augustoandrew@gmail.com";
}
if(from == "Outlook" || from == "LiveDesk"){
window.location="mailto:"+to+"?subject="+subject+"&body="+body;
}else if(from == "Gmail"){
window.location="https://mail.google.com/mail?view=cm&tf=0"+to+"&su"+subject+"&body"+body;
}
}
^^以下HTML的Javascript
<div id="hiddenForm">
<form>
What do you use for your email? <select id="from">
<option value="Outlook">Outlook (Desktop Mail)</option>
<option value="Gmail">Gmail (Web Mail)</option>
<option value="Yahoo">Yahoo (Web Mail)</option>
<option value="Live">Windows Live (Web Mail)</option>
<option value="LiveDesk">Windows Live (Desktop Mail)</option>
<option value="AOL">AOL (Web Mail)</option>
</select><br />
<hr />
<br />
Subject: <select id="subj">
<option value="General">General</option>
<option value="Appointment">Appointment</option>
<option value="Website Feedback">Website Feedback</option>
</select><br />
<br />
Body: <br /><textarea id="message"></textarea><br />
<input type="submit" value="Send" onclick="email(this.form.from.value, 'bibbidy@judys.com', this.form.subj.value, this.form.message.value)" />
</form>
</div>
我遇到的问题是,在Internet Explorer和Firefox中,此代码运行良好。在Safari和Chrome中,它无法使用。它基本上只是重新加载页面,但没有任何反应。正如您所看到的,它只能使用mailto与Outlook和Live(桌面版)一起使用。 Gmail我还不确定。如果有人可以帮助我知道为什么webkit浏览器无法识别此代码,请执行。
答案 0 :(得分:4)
尝试window.location.href ='mailto:marco@h4kr.com'; ;)
适用于chrome 12;)尚未在safari中测试过:)
答案 1 :(得分:1)
感谢您在上述代码的帮助下最终做出的帮助。
function mailURL(url)
{
var mailto_link = 'mailto:'+'?subject='+document.title+'&body='+escape(url);
if(getBrowser()=='mozilla'){
// Mozilla FireFox Mail To Friend
// Opens a new tab but also opens up Microsoft Office window with URL
window.open(mailto_link,'emailWindow');
}
else if(getBrowser()=='ie'){
// IE Favourite
window.open(mailto_link,'emailWindow');
}
else if(getBrowser()=='opera'){
// Opera
return true;
}
else if (getBrowser()=='safari'){ // safari
window.location.href=mailto_link;
//alert('mail to safari');
}
else if(getBrowser()=='chrome'){
window.location.href=mailto_link;
//alert('mail to chrome');
}
}
function getBrowser(){
var userAgent = navigator.userAgent.toLowerCase();
$.browser.chrome = /chrome/.test(userAgent);
$.browser.safari= /webkit/.test(userAgent);
$.browser.opera=/opera/.test(userAgent);
$.browser.msie=/msie/.test( userAgent ) && !/opera/.test( userAgent );
$.browser.mozilla= /mozilla/.test( userAgent ) && !/(compatible|webkit)/.test( userAgent ) || /firefox/.test(userAgent);
if($.browser.chrome) return "chrome";
if($.browser.mozilla) return "mozilla";
if($.browser.opera) return "opera";
if($.browser.safari) return "safari";
if($.browser.msie) return "ie";
}