/ Published in: jQuery
URL: http://css-tricks.com/snippets/jquery/open-external-links-in-new-window/
Expand |
Embed | Plain Text
$('a').each(function() { var a = new RegExp('/' + window.location.host + '/'); if(!a.test(this.href)) { $(this).click(function(event) { event.preventDefault(); event.stopPropagation(); window.open(this.href, '_blank'); }); } }); You can do this straight with HTML, but that is invalid markup, this takes care of business without invalid code and unnecessary markup. Or, you can still avoid the validation problems and just append the class target=_blank thing to any links with href attributes starting with http://. The example below only targets links in a #content area. Scoping down like that might be a good idea in case your menus are dynamic and create full URLs. $("#content a[href^='http://']").attr("target","_blank");
You need to login to post a comment.
