2011-06-20 10 views
5

JavaScriptを使用してページ上のすべての画像のhrefを取得することはできますか?このコードは私にそれらのイメージのsrcを与えますが、それらのhrefを返したいと思います。JavaScriptを使用してページ上のすべての画像のhrefを取得するにはどうすればよいですか?

function checkimages() { 
     var images = document.images; 
     for (var i=0; i<images.length; i++){ 
        var img =images[i].src; 
     alert(img); 
    } 
} 

答えて

10

@Kyleが指摘するように、imghref属性を持っていない、彼らは唯一のsrcを持っています。ちょうど推測ですが、画像の周りにリンク(a)があり、hrefは大きな画像へのパスを保存します(imgがサムネイルの場合)。この状況で

、あなたが使用できます。

function checkImages() { 
    var images = document.images; 
    for (var i = 0; i < images.length; i++){ 
     if (images[i].parentNode.tagName.toLowerCase() === 'a') { 
      console.log(images[i].parentNode.href); 
     } 
    } 
} 

jsFiddle Demo

+1

+1いいですよ。私はあなたが正しいと確信します。 – user113716

+0

私はそれを考えなかったが、それは非常に良い可能性がある。 +1 –

+1

とても感謝しています。 – joelson

2

画像はアンカー(a)にのみ適用されhref属性は、ありません。

+0

まあ、質問が間違っているが、コードは "SRC" を使用しています。 –

+0

私は知っている、彼はすでに彼が提供したコードでそれをやっている。私はその時にコメントを追加するだけではいけないので、私はそれに答える必要がありました。 –

+0

次に戻り属性が画像でどのようにアンカーされていますか? – joelson

0

おそらくあなたはsrc属性を探している

function checkimages() { 
    var images = document.getElementsByTagName('img'); 
    for (var i=0; i<images.length; i++){ 
     var img =images[i].getAttribute('src'); 
     alert(img); 
    } 
} 
3
var a = document.getElementsByTagName("IMG"); 
for (var i=0, len=a.length; i<len; i++) 
    alert (a[i].src); 
+0

このコードも便利です。ありがとう投稿 – joelson

関連する問題