<ahref="mailto:[email protected]?subject=look at this website&body=Hi,I found this website and thought you might like it http://www.geocities.com/wowhtml/">tell a friend</a>
Como mencionado nos comentários, ambos subjecte bodydevem ser escapados corretamente. Use encodeURIComponent(subject)em cada um deles, em vez de codificar manualmente para casos específicos.
Como Hoody mencionado nos comentários, você pode adicionar quebras de linha adicionando a seguinte sequência codificada na sequência:
Isso é totalmente específico do cliente. No caso geral, não.
Tripleee
4
Apenas como uma referência: você não precisa entender o assunto #
Oscar Pérez
17
Observe que o W3C exige que você codifique sua sequência seguindo essas regras: Os caracteres devem ser representados no NFC e os espaços devem ser escapados como% 20.
gordie
96
No caso de alguém está se perguntando você também pode adicionar quebras de linha para o corpo usando o% 0D seqüência% 0A - cubetoon.com/2008/...
O mailto:esquema de URL é definido na RFC 2368 . Além disso, a convenção para codificar informações em URLs e URIs é definida na RFC 1738 e depois na RFC 3986 . Eles prescrevem como incluir os cabeçalhos bodye subjectem um URL (URI):
Especificamente, você deve codificar em porcentagem o endereço de email, assunto e corpo e colocá-los no formato acima. O texto codificado em porcentagem é legal para uso em HTML, no entanto, este URL deve ser codificado por entidade para uso em um hrefatributo, de acordo com o padrão HTML4 :
Aqui está um exemplo muito mais profundo de se o seu email tem um URL e esse URL tem coisas que precisam ser codificadas: stackoverflow.com/questions/4744888/…
William Entriken
1
Acho que há um erro de digitação na linha $uri = ...: The &na frente de subjectdeve ser um?
jost21
24
Você pode adicionar um assunto adicionado ao comando mailto usando uma das seguintes maneiras. Adicionar? Assunto mailto à tag mailto.
<ahref="mailto:[email protected]?subject=testing out mailto">First Example</a>
Também podemos adicionar texto ao corpo da mensagem adicionando & body ao final da tag, como mostrado no exemplo abaixo.
<ahref="mailto:[email protected]?subject=testing out mailto&body=Just testing">Second Example</a>
Além do corpo, um usuário também pode digitar & cc ou & bcc para preencher os campos CC e BCC.
Também um recurso muito útil desse compositor de campo href é a capacidade de codificar todos os caracteres para hexadecimal (por exemplo: [Test Zõne]torna - se %5BTest%20Z%C3%B5ne%5D, isso pode evitar alguns bots de spam).
precisa saber é o seguinte
Quero dizer, se você optar por codificar todos os caracteres, todos serão convertidos em notação HTML &#x(evitando alguns bots de spam).
Observe que não é possível usar HTML no corpo da mensagem, de acordo com a RFC 2368 :
O hname especial "corpo" indica que o hvalue associado é o corpo da mensagem. O nome do "corpo" deve conter o conteúdo da primeira parte do texto / corpo sem formatação da mensagem. O URL mailto destina-se principalmente à geração de mensagens curtas de texto que são realmente o conteúdo do processamento automático (como mensagens de "inscrição" para listas de discussão), não corpos MIME gerais.
A questão é perguntar como definir o assunto e o conteúdo. Não mencionou a formatação. Embora isso seja útil para anotar em uma resposta, você deixou de lado o que é possível e como alcançá-lo. Sem isso, isso é um comentário, não uma resposta.
Quentin
Jure: Eu realmente aprecio que você coloque isso como resposta a esta pergunta, pois é exatamente isso que eu precisava descobrir e estava me perguntando. Portanto, embora Quentin pense que isso não responde à pergunta do OP, ele responde ao meu que eu estava procurando e que trouxe este post. Muito obrigado Jure!
user1567291
3
Aqui está um trecho executável para ajudá-lo a gerar links mailto: com assunto e corpo opcionais.
Se você deseja adicionar conteúdo html ao seu e-mail, codifique seu código html para o corpo da mensagem e inclua-o no código do link mailto, mas o problema é que você não pode definir o tipo de e-mail desse link de texto sem formatação para html, o cliente que usa o link precisa do cliente de email para enviar emails em HTML por padrão. Caso você queira testar aqui, está o código de um link mailto simples, com uma imagem agrupada em um link (URLs de estilo angular adicionados para visibilidade):
Respostas:
Sim, consulte todas as dicas e truques com mailto: http://www.angelfire.com/dc/html-webmaster/mailto.htm
mailto exemplo de assunto:
mailto com conteúdo:
Como mencionado nos comentários, ambos
subject
ebody
devem ser escapados corretamente. UseencodeURIComponent(subject)
em cada um deles, em vez de codificar manualmente para casos específicos.Como Hoody mencionado nos comentários, você pode adicionar quebras de linha adicionando a seguinte sequência codificada na sequência:
fonte
você pode usar esse código para definir assunto, corpo, cc, cco
fonte
O
mailto:
esquema de URL é definido na RFC 2368 . Além disso, a convenção para codificar informações em URLs e URIs é definida na RFC 1738 e depois na RFC 3986 . Eles prescrevem como incluir os cabeçalhosbody
esubject
em um URL (URI):Especificamente, você deve codificar em porcentagem o endereço de email, assunto e corpo e colocá-los no formato acima. O texto codificado em porcentagem é legal para uso em HTML, no entanto, este URL deve ser codificado por entidade para uso em um
href
atributo, de acordo com o padrão HTML4 :E, geralmente, aqui está um script PHP simples que codifica de acordo com o acima.
fonte
$uri = ...
: The&
na frente desubject
deve ser um?
Você pode adicionar um assunto adicionado ao comando mailto usando uma das seguintes maneiras. Adicionar? Assunto mailto à tag mailto.
Também podemos adicionar texto ao corpo da mensagem adicionando & body ao final da tag, como mostrado no exemplo abaixo.
Além do corpo, um usuário também pode digitar & cc ou & bcc para preencher os campos CC e BCC.
Como adicionar assunto à tag mailto
fonte
Eu criei uma ferramenta de código aberto para facilitar isso. Digite as seqüências desejadas e você obterá instantaneamente
mailto
:mailto.now.sh
fonte
fonte
subject
não é texto. É uma mesa. Como adicionar isso.Divido-o em linhas separadas para torná-lo um pouco mais legível.
fonte
aqui está o truque http://neworganizing.com/content/blog/tip-prepopulate-mailto-links-with-subject-body-text
fonte
Sim:
Use isso para experimentar elementos de formulário mailto e codificação de links.
Você pode inserir assunto, corpo (ou seja, conteúdo) etc. no formulário, clicar no botão e ver o link mailto html que pode colar em sua página.
Você pode até especificar elementos que raramente são conhecidos e usados: cc, cco, a partir de e-mails.
fonte
[Test Zõne]
torna - se%5BTest%20Z%C3%B5ne%5D
, isso pode evitar alguns bots de spam).&#x
(evitando alguns bots de spam).Sim, você pode assim:
fonte
Observe que não é possível usar HTML no corpo da mensagem, de acordo com a RFC 2368 :
Crédito: https://stackoverflow.com/a/13415988/1835519
fonte
Aqui está um trecho executável para ajudá-lo a gerar links mailto: com assunto e corpo opcionais.
fonte
Se você deseja adicionar conteúdo html ao seu e-mail, codifique seu código html para o corpo da mensagem e inclua-o no código do link mailto, mas o problema é que você não pode definir o tipo de e-mail desse link de texto sem formatação para html, o cliente que usa o link precisa do cliente de email para enviar emails em HTML por padrão. Caso você queira testar aqui, está o código de um link mailto simples, com uma imagem agrupada em um link (URLs de estilo angular adicionados para visibilidade):
As tags html são codificadas por URL.
fonte