jQuery Safer Mailto Links Plugin
There is a newer version of this post available called jQuery Mailto Links Plugin: Version 1.1
Recently I realized that jQuery plugins are the way to go for building re-usable, modular code snippets. As a result I have revisited the jQuery Safe Mailto’s function, building a jQuery Plugin to replace it.
Working Example
Download
- jQuery Safe Mailto Plugin JavaScript (.js)
- jQuery Safe Mailto Plugin ZIP (archived)
XHTML seen by Spam Spiders
1 | <a href="info[at]kevinleary[dot]net" rel="email">info[at]kevinleary[dot]net</a> |
All instances of “[at]“ will be replaces with “@”;
Likewise, [dot] will be replaced with “.”
XHTML generated by JavaScript
1 | <a href="info@kevinleary.net" rel="email" title="Email: info@kevinleary.net">info@kevinleary.net</a> |
Plugin Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | jQuery.fn.safeMailTo = function() { return this.each(function(){ var mailtoHref = $(this).attr('href'); mailtoHref = mailtoHref.replace(mailtoHref,"mailto:" + mailtoHref); mailtoHref = mailtoHref.replace("[at]","@"); mailtoHref = mailtoHref.replace("[dot]","."); var mailtoText = $(this).text(); mailtoText = mailtoText.replace("[at]","@"); mailtoText = mailtoText.replace("[dot]","."); $(this).text(mailtoText); var mailtoTitle = mailtoHref.replace("mailto:","Email: "); $(this).attr('title',mailtoTitle); $(this).click(function(){ window.location.href = mailtoHref; return false; }); }); }; |
Usage
- Include the latest version of jQuery into the HEAD section of the document.
- Include jquery.mailto.js into the HEAD section of the document.
- Add the .safeMailTo() method onto the selector you wish to modify
Example Implementation
1 2 3 4 5 6 | $(document).ready(function(){ // Mailto Plugin $("a[rel='email']").safeMailTo(); }); |
Resources
Related Posts
No Comments »
No comments yet.

















