-3

メインフォルダー「main」があります。内部に「test1.html」という名前のページがあります。画像フォルダもあります。画像フォルダには「pic1.png」という画像があります。

「メイン」フォルダーには、「test2.html」ページを持つ「サブ」というサブフォルダーもあります。

シナリオ: 両方のページ (ルート フォルダーとサブ フォルダー) の jquery を介して img タグに pic1.png を挿入しています。異なるページの src をどのように処理すればよいですか? つまり、

test1.html -- images/pic1.png

test2.html -- ../images/pic1.png

4

2 に答える 2

3

両方のソースの Web ルートからの相対パスを含めないでください。

/images/pic1.png 

相対パスの説明には、こちらのサイトが適しています。

于 2013-01-08T06:59:21.200 に答える
0

正規表現で場所を確認し、jQuery の attr 関数を使用して src を適用できます

(''+window.location).match(/http:\/\/[^\/]*\/*root\/?(.*)/)[1]

これは、最初のスラッシュなしでルートの後の URL のすべてに一致します。

ルートディレクトリにある場合は空になり..、その変数にいくつのスラッシュを適用できますか

var path = (''+window.location).match(/http:\/\/[^\/]*\/*root\/?(.*)/)[1]
if (path) {

   var prefix = '';
   for (var i=path.match(/\//).length;i--;) {
       prefix += '../';
   }
   $('img').each(function() {
      var $this = $(this)
      $this.attr('src', prefix + $this.attr('src'));
   });
}

これにより、ページ上の画像のすべての src 属性が変更されます

于 2013-01-08T06:56:56.590 に答える