Kif Tinbena Mailto Failproof: URLs

Tgħallem Fejn JavaScript Jgħin Out

L-ikkodifikar mailto: URLs korrettement huwa daqsxejn ineffiċjenti. Dan hu veru speċjalment meta għandek bżonn tinkludi linja tas-suġġett, messaġġ default, jew elementi oħra. Minflok kliem sempliċi, għandek tuża kodiċi hex, li jirrappreżentaw karattri ASCII li huma kkodifikati għal kull RFC 1738-Uniform Resource Locators (URL) standards. M'għandekx bżonn tiftakar jew tibni dawn ir-rappreżentazzjonijiet tal-hex fuq il-quċċata tar-ras tiegħek, għalkemm: JavaScript jista 'jagħmel dan għalik.

Il-JavaScript encodeURIComponent () Funzjoni

Il-funzjoni encodeURIComponent () JavaScript tikkodifika kwalunkwe sekwenza li tgħaddi bħala argument u tirritornaha għall-użu. Pereżempju, encodeURIComponent ("Dok, do da Dance!") Jipproduċi Doc% 2C% 20do% 20da% 20Dance! .

Iva, huwa li joskuraw. Jekk tagħmel din il-kriptografija bl-idejn, iċ-ċansijiet huma li inti tagħmel żball iżda JavaScript mhux se. Biex tuża encodeURIComponent () biex titħaffef il-kompożizzjoni tal- mailto tiegħek : URLs, sempliċement ibdel kwalunkwe okkorrenza ta 'sekwenza fil-URL bil-funzjoni encodeURIComponent () , li tara s-sekwenza tagħna bħala argument.

Per eżempju, ngħidu li trid toħloq mailto: URL li tibda messaġġ lil recipient@example.com b'suġġett ta '"Meta, meta issa? (Jekk" issa "hija hawn)." Il-URL se jkun bħal dan:

mailto: recipient@example.com? suġġett =

Is-suġġett huwa s-sekwenza, "Meta, meta issa? (Jekk" issa "hija hawn)." Is-sekwenza bħala argument biex encodeURIComponent () tagħmel dan li ġej:

encodeURIComponent ("Meta, meta issa? (jekk" issa "tinsab hawn)") .

Ir-riżultat ta 'din is-sejħa tal-funzjoni huwa:

Meta% 2C% 20when% 20is% 20now% 3F% 20 (jekk% 20% 22now% 22% 20is% 20here)

Uża ncodeURIComponent () Bil Mailto: URLs

Biex tuża encodeURIComponent () f'mailto : URL, ikkomponu r-rabta kollha (minn "") fi ħdan il- dokument JavaScript JavaScript.write () , li tikteb xi test lil id-dokument, bħallikieku kellna ittajpjah fis- sors HTML .

Pereżempju:

mail me! "

Ma '