Il y a quelques mois, je vous avais présenté une petite astuce en javascript pour protéger les adresses E-mail en javascript.
Le principe en était simple, comme les robots spameurs utilisent souvent comme motif de capture ce qu’il y a autour des l’arobases pour eviter qu’ils retrouvent les adresse au sein d’une page web, on remplace toute les arobases du document par un motif
Par exemple au lieu d’écrire :
1 2 3 |
tagada@tsointsoin.net < a href="mailto:tagada@tsointsoin.net" >tagada@tsointsoin.net |
on remplace l’arobase par un motif :
1 2 3 |
tagada|at|tsointsoin.net < a href="mailto:tagada|at|tsointsoin.net" >tagada|at|tsointsoin.net |
Puis on demande a javascript de remplacer le motif par une arobase.
Ainsi, le vilain robot spameur (pour peu qu’il n’interprète pas javascript) ne peut pas copier l’adresse Email, cependant que le navigateur web (interprète javascript à l’ouverture du document) rend les adresse Email accecibles aux utilisateurs de la page.
Bien sur, la méthode n’est pas infaillible, mais elle peut éviter quelques spams…
… et c’est toujours ça de pas pris ;o)
Comme ces derniers temps j’ai travaillé sur un projet dans lequel j’ai beaucoup utilisé Jquery, j’en ai profité pour réécrire ce petit bout de code pour Jquery ce qui donne ceci…
1 2 |
<<span class="start-tag">script</span><span class="attribute-name"> type</span>=<span class="attribute-value">"text/javascript" </span><span class="attribute-name">src</span>="<a href="view-source:http://passeurs-de-savoirs.fr/maac2011/javascript/jquery-1.4.4.js">javascript/jquery-1.4.4.js</a>"><span class="end-tag">script</span>> <<span class="start-tag">script</span><span class="attribute-name"> type</span>=<span class="attribute-value">"text/javascript"</span>> |
1 |
$(document).ready(function() { |
1 2 3 |
$("a[href^='mailto:']").bind("mouseover focus",function() { var motif= "|at|";//texte du motif $(this).html($(this).html().replace(motif, "@")); $(this).attr("href",$(this).attr("href").replace(motif, "@")) }); }); <span class="end-tag">script</span>> |
Les adresse E-mails inclues dans les liens restent ainsi cachées jusqu’à ce qu’on survole les liens avec la souris, ou qu’on leur donne le focus avec la barre de tabulation…