JavaScriptのみで記述されたブログツール・ソフトウェアです。表示にExt JSを使用します
Revision | 48c63f3f177a50bae1e0ba829db15f9568909e2d (tree) |
---|---|
Time | 2009-06-05 15:47:16 |
Author | elixirel <elixirel@user...> |
Commiter | elixirel |
fix mixi replace-uri bug.
@@ -35,6 +35,7 @@ function logXMLLoader(){ | ||
35 | 35 | jQuery.ajax({ |
36 | 36 | url: logXmlUrl, |
37 | 37 | method: "GET", |
38 | + error: showError, | |
38 | 39 | success: function(xmlData){ |
39 | 40 | var separateTag = xmlData.getElementsByTagName("file"); |
40 | 41 | var fileList = new Array(separateTag.length); |
@@ -69,6 +70,7 @@ function xmlLoader(url){ | ||
69 | 70 | var loader = new jQuery.ajax({ |
70 | 71 | url: url, |
71 | 72 | method: "GET", |
73 | + error: showError, | |
72 | 74 | success: analyzeTargetXml |
73 | 75 | }); |
74 | 76 | } |
@@ -203,7 +205,8 @@ function validateText(contents){ | ||
203 | 205 | // href="..."の部分のみを抜き出す |
204 | 206 | target_element = target_tag[0].match(/href=["'][^"']*["']/i); |
205 | 207 | // 相対URIが検出された場合、フルに置換する |
206 | - target_element = target_element[0].replace(/\.\//, document.location.href.replace(/[^\/]+$/, '')); | |
208 | + var baseUri = document.location.href.replace(/[^\/]+$/, ''); | |
209 | + target_element = target_element[0].replace(/\.\//, baseUri).replace(/\.\.\//g, ""); | |
207 | 210 | // Aタグ全体を消去し、再度Aクローズタグの置換を行う |
208 | 211 | contents = contents.replace(target_tag, ""); |
209 | 212 | contents = contents.replace(/<\/a>/i, " ( " + target_element.replace(/href=|["']/g, "") + " ) "); |
@@ -223,6 +226,13 @@ function validateText(contents){ | ||
223 | 226 | } |
224 | 227 | |
225 | 228 | /** |
229 | + * エラーメッセージを表示するメソッドです | |
230 | + */ | |
231 | +function showError(){ | |
232 | + alert("XMLファイルが読み込めません!パスの設定を確認してください。"); | |
233 | +} | |
234 | + | |
235 | +/** | |
226 | 236 | * <content>要素の変換を行います |
227 | 237 | * @param {String} content |
228 | 238 | */ |