Ссылка внутри элемента <a> не работает

0

Я не уверен, что многие из вас пытались это сделать, и у меня совершенно нет идей для решения этой проблемы, но здесь мы идем:

Одним нажатием кнопки появляется готовое письмо - но ссылка внутри письма не является гиперссылкой! Проверьте это - способ, которым я вынужден это делать, через javascript для контроля, который я буду добавлять позже...

Итак, вопрос в том, как я могу разместить гиперссылку (ссылка, которая должна там идти по ссылке) в письме?

Я предполагаю, что реальный вопрос заключается в том, как я поместил html в этот javascript...

Рабочая jsFiddle здесь.

HTML:

<a id = 'emailoff' href = "" target = "_blank">
    <div id= "btn1">
         <h2 id = "enter">Send Email</h2>
    </div>
</a>

JAVASCRIPT:

$('#btn1').click(function(){
                $("#emailoff").attr("href", "mailto:" +
                                    "?subject=Your ThinOptics glasses &body=To get your new ThinOptics glasses simply click this link and pick the case and color you like best.  You'll get  free shipping on your order.%0D %0D http://www.Thinoptics.com/[email protected]%0D %0D Enjoy")
            });
  • 1
    Меня устраивает. jsfiddle.net/djDm4
  • 0
    почему в теме есть пробелы?
Показать ещё 2 комментария
Теги:

2 ответа

3

mailto ссылки будут обрабатываться по-разному разными почтовыми клиентами. Некоторые могут выбрать преобразование обычного текста, начинающегося с http:// в гиперссылку, а другие - нет. Во многих ситуациях (сочетание почтовых клиентов, браузеров с настройками) ссылка mailto: link вообще не работает (я использую браузер Chrome и использую Gmail без специального клиента SMTP, и mailto: не работает для меня на все).

Почтовые ссылки Mailto не всегда корректно работают для посетителя сайта. Программный механизм, активируемый связью, требует, чтобы на компьютере или в браузере был установлен почтовый клиент по умолчанию или веб-почта. Не все веб-браузеры, такие как Internet Explorer, имеют возможность настраивать службу электронной почты для этой цели, но поддерживают только локальное программное обеспечение почтового клиента. Другие, такие как Opera, Firefox и Chrome, имеют поддержку обоих вариантов.

Кроме того, если почтовый клиент или служба электронной почты не были явно установлены для использования по умолчанию, все еще может существовать, если клиент электронной почты был предварительно установлен поставщиком компьютера, но никогда не использовался или не был настроен пользователем. В этом случае, щелкнув ссылку mailto, пользователь будет подвержен множеству технических вопросов неконфигурированным почтовым клиентом.

http://en.wikipedia.org/wiki/Mailto#Functionality_issues

Кроме того, есть боты, которые регулярно просматривают веб- mailto: для ссылок mailto: links. Ожидайте получения значительного спама на любом адресе электронной почты, указанном в этой ссылке.

Наконец, убедитесь, что URL-адрес кодирует требуемые элементы в ссылке

[STD66] требует кодирования многих символов в URI. Это влияет на схему URI "mailto" для некоторых общих символов, которые могут отображаться в адресах, заголовках или содержимом сообщений. Одним из таких символов является пространство ("", ASCII hex 20). Обратите внимание на приведенные ниже примеры использования " %20" для пробела в теле сообщения. Также обратите внимание, что разрывы строк в теле сообщения ДОЛЖНЫ быть закодированы с помощью "% 0D% 0A". Реализации МОГУТ добавить окончательный разрыв строки в тело сообщения, даже если в теле URI mailto нет конечной "% 0D% 0A". Разрывы строк в других s НЕ ДОЛЖНЫ использоваться.

http://www.ietf.org/rfc/rfc6068.txt

  • 0
    Так ты не думаешь, что то, что я пытаюсь сделать, возможно?
  • 0
    Я бы не использовал mailto . Стандартная практика заключается в использовании формы, которая в свою очередь может отправить электронное письмо.
0

URL-кодирование ссылки может работать.

<a href="http://www.google.co.uk/">Google</a> 

Было бы:

%3Ca%20href%3D%22http%3A%2F%2Fwww.google.co.uk%2F%22%3EGoogle%3C%2Fa%3E

Это выглядит ужасно, но вы можете попробовать, если вы вынуждены это сделать.

Попробуйте здесь

  • 0
    или: + также будет достаточно.
  • 0
    Некоторые почтовые клиенты создают сообщения электронной почты только в текстовом формате по ссылке mailto. Такие клиенты не будут пытаться интерпретировать закодированный HTML как таковой, а просто представят закодированный беспорядок конечному пользователю.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню