Revision: 25793
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at April 9, 2010 03:43 by knedle
Initial Code
jQuery.repairLink2Anchor = function() {
// exists tag BASE
if ($("base").length) {
// regular expression for anchor link
var re1 = /#([\w-]+)/; // anchor parts
var re2 = /^#([\w-]+)/; // only anchor
// read current url
var thisUrl = document.location.href;
// remove anchor from current url
thisUrl=thisUrl.replace(re1,"");
// inicialization
var href = '';
var anchor = '';
// loop all A tags whith attribute href
$("a[href]").each(function(){
href = $(this).attr("href");
// check - href is anchor?
if (re2.test(href)) {
anchor = href.match(re2);
$(this).attr("href", thisUrl + '#' + anchor[1]);
}
});
}
}
/*
start this jQuery function with:
$.repairLink2Anchor();
*/
Initial URL
Initial Description
on using any wysiwyg editor (f.e. CKEditor) is inserted link to anchor on same page in this form: [a href="#anchor"]text[/a] if on web site is used tag BASE, anchors links are wrong - on all page are on this url: www.domain.com/#anchor this function repair this anchor link to correct url
Initial Title
jQuery: repair anchors link on web with BASE tag
Initial Tags
javascript, jquery
Initial Language
jQuery