I link con il protocollo mailto
possono a ragione essere considerati come una porta spalancata allo spam. Tuttavia possiamo nasconderne il contenuto utilizzando jQuery. Vediamo come.
Nella marcatura eliminiamo completamente l'URL con mailto
e sostituiamo il carattere @
con un segnaposto:
<a href="#" class="email">nome[at]dominio.ext</a>
Quindi ripristiniamo il corretto funzionamento di questi link con jQuery:
var makeEmails = function() {
if($('a.email').length) {
$('a.email').each(function() {
var $a = $(this);
var text = $a.text();
var mailto = 'mailto:' + text.replace('[at]', '@');
$a.attr('href', mailto);
$a.text(text.replace('[at]', '@'));
});
}
};
Questa soluzione presenta degli ovvi problemi di accessibilità , quindi utilizzatela solo se non avete alternative lato server.