}
// Aタグを変換する
- while (target_tag = contents.match(/<a[^>]*>/)) {
- // href="..."の部分のみを抜き出す
- target_element = target_tag[0].match(/href=["'][^"']*["']/i);
+ var base_uri = document.location.href.replace(/[^\/]+$/, '');
+ var func = function(target, quote, url) {
// 相対URIが検出された場合、フルに置換する
- target_element = target_element[0].replace(/\.\//, "http://lunardial.sakura.ne.jp/");
- // Aタグ全体を消去し、再度Aクローズタグの置換を行う
- contents = contents.replace(target_tag, "");
- contents = contents.replace(/<\/a>/i, " ( " + target_element.replace(/href=|["']/g, "") + " ) ");
- }
+ return '( ' + url.replace(/^(?!http)(?:\.\/)?/, base_uri) + ' )';
+ };
+ contents = contents.replace(/<a[^>]*href=(["'])(.*?)\1[^>]*>.*?<\/a>/i, func);
// 通常のタグすべてを削除する
contents = contents.replace(/<[^>]*>|<\/[^>]*>/ig, "");