Just thought of sharing this snippet that adds favicon next to the selected links:
/** * favicon - jQuery plugin for adding favicons next to the links * To automate: * a[href ^="http://jquery.com"] { * background: url(http://jquery.com/favicon.ico) center right no- repeat; * padding-right: 16px; * } * * January 30, 2008//R. Rajesh Jeba Anbiah//http:// rajeshanbiah.blogspot.com/ * * Usage: * - $('a').favicon(); - all links * - $('[EMAIL PROTECTED]"http"]').favicon(); - all external links * - $('a').favicon({paddingRight: '32px'}); - all links with custom paddingRight * @todo Document at http://rajeshanbiah.blogspot.com/ * <jsmin> * $.fn.favicon=function(cssOptions){return this.each(function(){var m=/(http:\/\/((((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*([a-zA-Z] (([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3}))(:(\d+))?)(\/(((([a- zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[;:@&=])*)(\/((([a-zA-Z\d$\-_.+! *'(),]|(%[a-fA-F\d]{2}))|[;:@&=])*))*)(\?((([a-zA-Z\d$\-_.+!*'(),]|(% [a-fA-F\d]{2}))|[;:@&=])*))?)?)|(ftp:\/\/((((([a-zA-Z\d$\-_.+!*'(),]|(% [a-fA-F\d]{2}))|[;?&=])*)(:((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))| [;?&=])*))?@)?((((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*([a-zA-Z] (([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3}))(:(\d+))?))(\/ (((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[@&=])*)(\/((([a-zA-Z\d$\- _.+!*'(),]|(%[a-fA-F\d]{2}))|[@&=])*))*)(;type=[AIDaid])?)?)|(news: (((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[;\/&=])+@(((([a-zA-Z\d] (([a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z \d])?))|((\d+)(\.(\d+)){3})))|([a-zA-Z]([a-zA-Z\d]|[_.+-])*)|\*))| (nntp:\/\/((((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*([a-zA-Z] (([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3}))(:(\d+))?)\/([a-zA- Z]([a-zA-Z\d]|[_.+-])*)(\/(\d+))?)|(telnet:\/\/((((([a-zA-Z\d$\-_.+! *'(),]|(%[a-fA-F\d]{2}))|[;?&=])*)(:((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F \d]{2}))|[;?&=])*))?@)?((((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z\d])?) \.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3}))(:(\d +))?))\/?)|(gopher:\/\/((((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z\d])?) \.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3}))(:(\d +))?)(\/([a-zA-Z\d$\-_.+!*'(),;\/@&=]|(%[a-fA-F\d]{2}))((([a-zA-Z\d$\- _.+!*'(),;\/@&=]|(%[a-fA-F\d]{2}))*)(%09((([a-zA-Z\d$\-_.+!*'(),]|(%[a- fA-F\d]{2}))|[;:@&=])*)(%09(([a-zA-Z\d$\-_.+!*'(),;\/@&=]|(%[a-fA-F\d] {2}))*))?)?)?)?)|(wais:\/\/((((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z\d])?) \.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3}))(:(\d +))?)\/(([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))*)((\/(([a-zA-Z\d$\-_. +!*'(),]|(%[a-fA-F\d]{2}))*)\/(([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d] {2}))*))|\?((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[;:@&=])*))?)| (mailto:(([a-zA-Z\d$\-_.+!*'(),;\/@&=]|(%[a-fA-F\d]{2}))+))|(file:\/\/ ((((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*([a-zA-Z](([a-zA-Z \d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3}))|localhost)?\/(((([a-zA-Z\d$ \-_.+!*'(),]|(%[a-fA-F\d]{2}))|[@&=])*)(\/((([a-zA-Z\d$\-_.+!*'(),]|(% [a-fA-F\d]{2}))|[@&=])*))*))|(prospero:\/\/((((([a-zA-Z\d](([a-zA-Z \d]|-)*[a-zA-Z\d])?)\.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+) (\.(\d+)){3}))(:(\d+))?)\/(((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))| [@&=])*)(\/((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[@&=])*))*)((; ((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[@&])*)=((([a-zA-Z\d$\-_.+! *'(),]|(%[a-fA-F\d]{2}))|[@&])*)))*)|(ldap:\/\/(((((([a-zA-Z\d](([a-zA- Z\d]|-)*[a-zA-Z\d])?)\.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+) (\.(\d+)){3}))(:(\d+))?))?\/((((((([a-zA-Z\d]|%(3\d|[46][a-fA-F\d]|[57] [Aa\d]))|(%20))+|(OID|oid)\.((\d+)(\.(\d+))*))((%0[Aa])? (%20)*)=((%0[Aa])?(%20)*))?(([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d] {2}))*))(((%0[Aa])?(%20)*)\+((%0[Aa])?(%20)*)((((([a-zA-Z\d]|%(3\d|[46] [a-fA-F\d]|[57][Aa\d]))|(%20))+|(OID|oid)\.((\d+)(\.(\d+))*))((%0[Aa])? (%20)*)=((%0[Aa])?(%20)*))?(([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d] {2}))*)))*)((((%0[Aa])?(%20)*)([;,])((%0[Aa])?(%20)*))(((((([a-zA-Z\d]| %(3\d|[46][a-fA-F\d]|[57][Aa\d]))|(%20))+|(OID|oid)\.((\d+)(\.(\d+))*)) ((%0[Aa])?(%20)*)=((%0[Aa])?(%20)*))?(([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F \d]{2}))*))(((%0[Aa])?(%20)*)\+((%0[Aa])?(%20)*)((((([a-zA-Z\d]|%(3\d| [46][a-fA-F\d]|[57][Aa\d]))|(%20))+|(OID|oid)\.((\d+)(\.(\d+))*)) ((%0[Aa])?(%20)*)=((%0[Aa])?(%20)*))?(([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F \d]{2}))*)))*))*(((%0[Aa])?(%20)*)([;,])((%0[Aa])?(%20)*))?)(\?(((([a- zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))+)(,(([a-zA-Z\d$\-_.+!*'(),]|(%[a- fA-F\d]{2}))+))*)?)(\?(base|one|sub)(\?((([a-zA-Z\d$\-_.+!*'(),;\/@&=]| (%[a-fA-F\d]{2}))+)))?)?)?)|((z39\.50[rs]):\/\/((((([a-zA-Z\d](([a-zA-Z \d]|-)*[a-zA-Z\d])?)\.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+) (\.(\d+)){3}))(:(\d+))?)(\/((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2})) +)(\+(([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))+))*(\?(([a-zA-Z\d$\-_. +!*'(),]|(%[a-fA-F\d]{2}))+))?)?(;esn=(([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA- F\d]{2}))+))?(;rs=(([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))+)(\+(([a- zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))+))*)?))|(cid:((([a-zA-Z\d$\-_.+! *'(),]|(%[a-fA-F\d]{2}))|[;@&=])*))|(mid:((([a-zA-Z\d$\-_.+!*'(),]|(% [a-fA-F\d]{2}))|[;@&=])*)(\/((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d] {2}))|[;@&=])*))?)|(vemmi:\/\/((((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z \d])?)\.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3})) (:(\d+))?)(\/((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[\/@&=])*)((; ((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[\/@&])*)=((([a-zA-Z\d$\-_. +!*'(),]|(%[a-fA-F\d]{2}))|[\/@&])*))*))?)|(imap:\/\/((((((([a-zA-Z\d$ \-_.+!*'(),]|(%[a-fA-F\d]{2}))|[&=~])+)((;[Aa][Uu][Tt][Hh]=(\*|((([a- zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[&=~])+))))?)|((;[Aa][Uu][Tt] [Hh]=(\*|((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[&=~])+)))(((([a- zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[&=~])+))?))@)?((((([a-zA-Z\d] (([a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z \d])?))|((\d+)(\.(\d+)){3}))(:(\d+))?))\/(((((([a-zA-Z\d$\-_.+!*'(),]| (%[a-fA-F\d]{2}))|[&=~:@\/])+)?;[Tt][Yy][Pp][Ee]=([Ll]([Ii][Ss][Tt]| [Ss][Uu][Bb])))|(((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[&=~:@\/]) +)(\?((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[&=~:@\/])+))?((;[Uu] [Ii][Dd][Vv][Aa][Ll][Ii][Dd][Ii][Tt][Yy]=([1-9]\d*)))?)|(((([a-zA-Z\d$ \-_.+!*'(),]|(%[a-fA-F\d]{2}))|[&=~:@\/])+)((;[Uu][Ii][Dd][Vv][Aa][Ll] [Ii][Dd][Ii][Tt][Yy]=([1-9]\d*)))?(\/;[Uu][Ii][Dd]=([1-9]\d*))((\/;[Ss] [Ee][Cc][Tt][Ii][Oo][Nn]=((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))| [&=~:@\/])+)))?)))?)|(nfs:((\/\/((((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z \d])?)\.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3})) (:(\d+))?)((\/((((([a-zA-Z\d\$\-_.!~*'(),])|(%[a-fA-F\d]{2})|[:@&=+])*) (\/((([a-zA-Z\d\$\-_.!~*'(),])|(%[a-fA-F\d]{2})|[:@&=+])*))*)?)))?)|(\/ ((((([a-zA-Z\d\$\-_.!~*'(),])|(%[a-fA-F\d]{2})|[:@&=+])*)(\/((([a-zA-Z \d\$\-_.!~*'(),])|(%[a-fA-F\d]{2})|[:@&=+])*))*)?))|((((([a-zA-Z\d\$\- _.!~*'(),])|(%[a-fA-F\d]{2})|[:@&=+])*)(\/((([a-zA-Z\d\$\-_.!~*'(),])| (%[a-fA-F\d]{2})|[:@&=+])*))*)?)))/.exec(this.href);var css= $.extend({paddingRight:'16px',backgroundImage:'url(http://'+m[2]+'/ favicon.ico)',backgroundRepeat:'no-repeat',backgroundPosition:'center right'},cssOptions);$(this).css(css);});}; * </jsmin> **/ $.fn.favicon = function(cssOptions) { return this.each(function() { /* PHP helper to generate the following regexp <?php // Generate JavaScript regexp for matching URL for getting host part // set user agent; otherwise getting 403 ini_set('user_agent', 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11'); echo str_replace(array( "\n", // remove newline '/', // escape / to \/ '?:' // remove--we really need mach ) , array( '', '\/', '' ) , file_get_contents('http://web.archive.org/web/ 20070302134659/foad.org/~abigail/Perl/url3.regex')); ?> */ // @todo Check: Not sure if it's the right way to get host var m = /(http:\/\/((((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z\d])?) \.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3}))(:(\d +))?)(\/(((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[;:@&=])*)(\/ ((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[;:@&=])*))*)(\?((([a-zA-Z \d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[;:@&=])*))?)?)|(ftp:\/\/((((([a-zA-Z \d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[;?&=])*)(:((([a-zA-Z\d$\-_.+!*'(),]| (%[a-fA-F\d]{2}))|[;?&=])*))?@)?((((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z \d])?)\.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3})) (:(\d+))?))(\/(((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[@&=])*)(\/ ((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[@&=])*))*) (;type=[AIDaid])?)?)|(news:(((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d] {2}))|[;\/&=])+@(((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*([a-zA- Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3})))|([a-zA-Z]([a-zA- Z\d]|[_.+-])*)|\*))|(nntp:\/\/((((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z \d])?)\.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3})) (:(\d+))?)\/([a-zA-Z]([a-zA-Z\d]|[_.+-])*)(\/(\d+))?)|(telnet:\/\/ ((((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[;?&=])*)(:((([a-zA-Z\d$ \-_.+!*'(),]|(%[a-fA-F\d]{2}))|[;?&=])*))?@)?((((([a-zA-Z\d](([a-zA-Z \d]|-)*[a-zA-Z\d])?)\.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+) (\.(\d+)){3}))(:(\d+))?))\/?)|(gopher:\/\/((((([a-zA-Z\d](([a-zA-Z \d]|-)*[a-zA-Z\d])?)\.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+) (\.(\d+)){3}))(:(\d+))?)(\/([a-zA-Z\d$\-_.+!*'(),;\/@&=]|(%[a-fA-F\d] {2}))((([a-zA-Z\d$\-_.+!*'(),;\/@&=]|(%[a-fA-F\d]{2}))*)(%09((([a-zA-Z \d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[;:@&=])*)(%09(([a-zA-Z\d$\-_.+! *'(),;\/@&=]|(%[a-fA-F\d]{2}))*))?)?)?)?)|(wais:\/\/((((([a-zA-Z\d] (([a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z \d])?))|((\d+)(\.(\d+)){3}))(:(\d+))?)\/(([a-zA-Z\d$\-_.+!*'(),]|(%[a- fA-F\d]{2}))*)((\/(([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))*)\/(([a- zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))*))|\?((([a-zA-Z\d$\-_.+!*'(),]|(% [a-fA-F\d]{2}))|[;:@&=])*))?)|(mailto:(([a-zA-Z\d$\-_.+!*'(),;\/@&=]|(% [a-fA-F\d]{2}))+))|(file:\/\/((((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z \d])?)\.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3}))| localhost)?\/(((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[@&=])*)(\/ ((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[@&=])*))*))|(prospero:\/\/ ((((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*([a-zA-Z](([a-zA-Z \d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3}))(:(\d+))?)\/(((([a-zA-Z\d$\- _.+!*'(),]|(%[a-fA-F\d]{2}))|[@&=])*)(\/((([a-zA-Z\d$\-_.+!*'(),]|(%[a- fA-F\d]{2}))|[@&=])*))*)((;((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))| [@&])*)=((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[@&])*)))*)|(ldap: \/\/(((((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*([a-zA-Z](([a-zA-Z \d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3}))(:(\d+))?))?\/((((((([a-zA-Z \d]|%(3\d|[46][a-fA-F\d]|[57][Aa\d]))|(%20))+|(OID|oid)\.((\d+)(\.(\d +))*))((%0[Aa])?(%20)*)=((%0[Aa])?(%20)*))?(([a-zA-Z\d$\-_.+!*'(),]|(% [a-fA-F\d]{2}))*))(((%0[Aa])?(%20)*)\+((%0[Aa])?(%20)*)((((([a-zA-Z\d]| %(3\d|[46][a-fA-F\d]|[57][Aa\d]))|(%20))+|(OID|oid)\.((\d+)(\.(\d+))*)) ((%0[Aa])?(%20)*)=((%0[Aa])?(%20)*))?(([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F \d]{2}))*)))*)((((%0[Aa])?(%20)*)([;,])((%0[Aa])?(%20)*))(((((([a-zA-Z \d]|%(3\d|[46][a-fA-F\d]|[57][Aa\d]))|(%20))+|(OID|oid)\.((\d+)(\.(\d +))*))((%0[Aa])?(%20)*)=((%0[Aa])?(%20)*))?(([a-zA-Z\d$\-_.+!*'(),]|(% [a-fA-F\d]{2}))*))(((%0[Aa])?(%20)*)\+((%0[Aa])?(%20)*)((((([a-zA-Z\d]| %(3\d|[46][a-fA-F\d]|[57][Aa\d]))|(%20))+|(OID|oid)\.((\d+)(\.(\d+))*)) ((%0[Aa])?(%20)*)=((%0[Aa])?(%20)*))?(([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F \d]{2}))*)))*))*(((%0[Aa])?(%20)*)([;,])((%0[Aa])?(%20)*))?)(\?(((([a- zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))+)(,(([a-zA-Z\d$\-_.+!*'(),]|(%[a- fA-F\d]{2}))+))*)?)(\?(base|one|sub)(\?((([a-zA-Z\d$\-_.+!*'(),;\/@&=]| (%[a-fA-F\d]{2}))+)))?)?)?)|((z39\.50[rs]):\/\/((((([a-zA-Z\d](([a-zA-Z \d]|-)*[a-zA-Z\d])?)\.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+) (\.(\d+)){3}))(:(\d+))?)(\/((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2})) +)(\+(([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))+))*(\?(([a-zA-Z\d$\-_. +!*'(),]|(%[a-fA-F\d]{2}))+))?)?(;esn=(([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA- F\d]{2}))+))?(;rs=(([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))+)(\+(([a- zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))+))*)?))|(cid:((([a-zA-Z\d$\-_.+! *'(),]|(%[a-fA-F\d]{2}))|[;@&=])*))|(mid:((([a-zA-Z\d$\-_.+!*'(),]|(% [a-fA-F\d]{2}))|[;@&=])*)(\/((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d] {2}))|[;@&=])*))?)|(vemmi:\/\/((((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z \d])?)\.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3})) (:(\d+))?)(\/((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[\/@&=])*)((; ((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[\/@&])*)=((([a-zA-Z\d$\-_. +!*'(),]|(%[a-fA-F\d]{2}))|[\/@&])*))*))?)|(imap:\/\/((((((([a-zA-Z\d$ \-_.+!*'(),]|(%[a-fA-F\d]{2}))|[&=~])+)((;[Aa][Uu][Tt][Hh]=(\*|((([a- zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[&=~])+))))?)|((;[Aa][Uu][Tt] [Hh]=(\*|((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[&=~])+)))(((([a- zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[&=~])+))?))@)?((((([a-zA-Z\d] (([a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z \d])?))|((\d+)(\.(\d+)){3}))(:(\d+))?))\/(((((([a-zA-Z\d$\-_.+!*'(),]| (%[a-fA-F\d]{2}))|[&=~:@\/])+)?;[Tt][Yy][Pp][Ee]=([Ll]([Ii][Ss][Tt]| [Ss][Uu][Bb])))|(((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[&=~:@\/]) +)(\?((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))|[&=~:@\/])+))?((;[Uu] [Ii][Dd][Vv][Aa][Ll][Ii][Dd][Ii][Tt][Yy]=([1-9]\d*)))?)|(((([a-zA-Z\d$ \-_.+!*'(),]|(%[a-fA-F\d]{2}))|[&=~:@\/])+)((;[Uu][Ii][Dd][Vv][Aa][Ll] [Ii][Dd][Ii][Tt][Yy]=([1-9]\d*)))?(\/;[Uu][Ii][Dd]=([1-9]\d*))((\/;[Ss] [Ee][Cc][Tt][Ii][Oo][Nn]=((([a-zA-Z\d$\-_.+!*'(),]|(%[a-fA-F\d]{2}))| [&=~:@\/])+)))?)))?)|(nfs:((\/\/((((([a-zA-Z\d](([a-zA-Z\d]|-)*[a-zA-Z \d])?)\.)*([a-zA-Z](([a-zA-Z\d]|-)*[a-zA-Z\d])?))|((\d+)(\.(\d+)){3})) (:(\d+))?)((\/((((([a-zA-Z\d\$\-_.!~*'(),])|(%[a-fA-F\d]{2})|[:@&=+])*) (\/((([a-zA-Z\d\$\-_.!~*'(),])|(%[a-fA-F\d]{2})|[:@&=+])*))*)?)))?)|(\/ ((((([a-zA-Z\d\$\-_.!~*'(),])|(%[a-fA-F\d]{2})|[:@&=+])*)(\/((([a-zA-Z \d\$\-_.!~*'(),])|(%[a-fA-F\d]{2})|[:@&=+])*))*)?))|((((([a-zA-Z\d\$\- _.!~*'(),])|(%[a-fA-F\d]{2})|[:@&=+])*)(\/((([a-zA-Z\d\$\-_.!~*'(),])| (%[a-fA-F\d]{2})|[:@&=+])*))*)?)))/.exec(this.href); // console.log(m); // Result for "http://en.wikipedia.org/wiki/ AJAX": ["http://en.wikipedia.org/wiki/AJAX", "http://en.wikipedia.org/ wiki/AJAX", "en.wikipedia.org", "en.wikipedia.org", "en.wikipedia.org", "wikipedia.", "wikipedia", "ikipedia", "i", "org", "rg", "r", undefined, undefined, undefined, undefined, undefined, undefined, "/wiki/AJAX", "wiki/AJAX", "wiki", "i", "i", undefined, "/ AJAX", "AJAX", "X", "X", undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined] var css = $.extend( { paddingRight: '16px', backgroundImage: 'url(http://' + m[2] + '/favicon.ico)', backgroundRepeat: 'no-repeat', backgroundPosition: 'center right' }, cssOptions); $(this).css(css); }); }; -- <?php echo 'Just another PHP saint'; ?> Email: rrjanbiah-at-Y!com Blog: http://rajeshanbiah.blogspot.com/