ROT13 is not immediately readable to a person who has javascript
disabled. The method I used was specifically designed to keep the
email address obvious to a human.

On Wed, Sep 2, 2009 at 4:46 PM, shapper<mdmo...@gmail.com> wrote:
>
> I think the Rot13 is better at least according with the following
> results:
> http://www.josephfinsterwald.com/UI/Pages/article4.aspx
>
> On Sep 2, 7:01 pm, brian <bally.z...@gmail.com> wrote:
>> I wrote one but have never gotten around to submitting it. Feedback welcome.
>>
>> /**
>>  * De-obfuscate printed email addresses which are of the type:
>>  *
>>  * <span class="Obfuscated" title="some title">
>>  * some link text [ someone AT gmail DOT com ]
>>  * <span>
>>  *
>>  * The braces around the address part are hard-wired here. That should
>>  * probably be set by a param. Ditto for the "AT" & "DOT".
>>  *
>>  * @author brian ally, zijn digital
>>  **/
>> jQuery.fn.deobfuscate = function()
>> {
>>         return this.each(function()
>>         {
>>                 var content = $(this).text();
>>
>>                 /* grab the part inside the braces, swap out placeholders, 
>> and trim
>>                  */
>>                 var obfuscated = content.match(/\[(.*)\]/);
>>                 var address = obfuscated[1]
>>                         .replace(' AT ', '@')
>>                         .replace(' DOT ', '.')
>>                         .replace(/^\s+|\s+$/g, '');
>>
>>                 /* get everything before the braces and trim
>>                  */
>>                 var text = content.match(/.?[^[]+/);
>>
>>                 text = (text[0] != content)
>>                         ? text[0].replace(/^\s+|\s+$/g, '')
>>                         : address;      // if there's no text part, use the 
>> address
>>
>>                 var title = $(this).attr('title') || '';
>>
>>                 $(this).replaceWith($('<a href="mailto:' + address + '" 
>> title="' +
>> title + '">' + text + '</a>'));
>>         });
>>
>> };
>>
>> $(function()
>> {
>>         $('.Obfuscated').deobfuscate();
>>
>> });
>>
>> The title attribute of the span will be given to the link. If you
>> leave out the "some link text" part, the email address itself will be
>> used.
>>
>> Here's a PHP function to create the span from an email address.
>>
>> /**
>>  * Wrap an email address in a formatted span tag in such a way
>>  * as to allow for easy javascript translation to a normal mailto: link.
>>  *
>>  * this:
>>  * f...@bar.net, 'email foo!', 'some title text'
>>  * becomes:
>>  * <span class="Obfuscated" title="some title text">email foo! [ foo
>> AT bar DOT net ]</span>
>>  *
>>  * @param       string  address email address
>>  * @param       string  text    link text
>>  * @param       string  title   link title
>>  * @return      string                  obfuscated address, wrapped in i 
>> span tag
>>  *
>>  * @author      brian ally, zijn digital
>>  **/
>> function obfuscateEmail($address, $text= null, $title = null)
>> {
>>         if (empty($address)) return null;
>>
>>         $regexp = 
>> '^[_a-z0-9-]+(\.[_a-z0-9-]+)*...@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$';
>>         $search = Array('@', '.');
>>         $replace = Array(' AT ', ' DOT ');
>>         $class = 'Obfuscated';
>>
>>         if (is_string($address) && eregi($regexp, $address))
>>         {
>>                 $obfuscated = str_replace($search, $replace, $address);
>>
>>                 return "<span class=\"${class}\""
>>                         . (!is_null($title) ? " title=\"${title}\"" : null)
>>                         . '>'
>>                         . (!is_null($text) ? $text : null)
>>                         . "[ ${obfuscated} ]</span>";
>>         }
>>         return $address;
>>
>> }
>> On Wed, Sep 2, 2009 at 12:35 PM, shapper<mdmo...@gmail.com> wrote:
>>
>> > I found the following one:
>>
>> >http://plugins.jquery.com/project/RotationalStringObfuscator
>>
>> > It seems interesting.
>>
>> > How can I apply it to all emails on my web page?
>>
>> > Thank You,
>> > Miguel

Reply via email to