Используйте в качестве кнопки и запускайте mailto при нажатии
Я создаю пользовательскую кнопку на своей веб-странице, которая на самом деле является <div>
, Я хочу вызвать mailto при нажатии кнопки. Каков наилучший выход?
Я попытался вызвать функцию javascript с помощью-onClick, которая выглядит так -
function foo(){
window.open("mailto:xyz@abc.com");
}
но сначала открывается новая вкладка в Chrome, а затем запрашивается соответствующее приложение для отправки электронной почты. Этот опыт отличается от того, что мы обычно получаем, когда мы просто сделать <a href=mailto:.....>
in ФОРМАТ HTML.
Я также могу создать новый элемент документа в функции JS и имитировать такой щелчок -
function sendEmail() {
var mail = 'mailto:contact@test.com';
var a = document.createElement('a');
a.href = mail;
a.click();
};
но я не слишком уверен, если это правильный путь! У кого-нибудь есть лучшее решение?
5 ответов
используйте якорный тег, но измените свойство display на block:
HTML-код
<a class="mailto" href="mailto:contact@test.com">Mail</a>
в CSS
.mailto{
display:block;
width:100px;
height:20px;
}
попробуйте это и скажите мне, если работает. Если нет, я удалю ответ.
<script>
function sendEmail()
{
window.location = "mailto:xyz@abc.com";
}
</script>
<div onclick="sendEmail();">Send e-mail</div>
очень поздно на вечеринку я знаю, но как насчет объединения этих ответов в нечто более простое и практичное:
<div class="button" onclick="location.href='mailto:xyz@abc.com';">Send E-Mail</div>
попробуйте эту функцию и html. Он откроет новый почтовый клиент.
<div onclick="doMail();">
function doMail() {
var email ="xyz@abc.com";
location.href = "mailto:"+email;
}
<div onclick="mailtoperformingFunction('inner');" id="divbutton">
<script type="text/javascript">
function mailtoperformingFunction()
{
}
</script>