1

次のような特定の div からすべての画像にアクセスしたい

<div id="mydiv">
 <div id="mydiv1">
  <img  src="pic.jpg">
  <img  src="pic.jpg">
  <img  src="">`enter code here`
 </div>
 <div id="mydiv2">
  <img href="#">
  <img  src="pic.jpg">
  <img  src="">
 </div>
</div>

私がする必要があるのは動的ページです。この div からすべての画像の src を取得し、どの画像の src に画像リンクが含まれていないかを確認し、これに従ってアラートを表示します

私はJavaスクリプトが初めてで、助けてください。

4

5 に答える 5

2
var imgs = document.getElementById('mydiv').getElementsByTagName('img');
var countImagesWithoutSrc = 0;

var curImg;
for(var i = 0; i < imgs .length; i++) {
  curImg = imgs[i];

  if(!curImg.src || !curImg.src.length) {
    ++countImagesWithoutSrc;
  }
}

alert(countImagesWithoutSrc); //gives you the number of images missing a src attribute
于 2012-12-06T10:18:45.510 に答える
1
var images = document.getElementById('mydiv').getElementsByTagName('img');
var emptyimg = [];
for(var i = 0; i < images.length; i++){
    if(images[i].src=="")
        emptyimg.push(images[i]);
}

あなたのコメントを引用するには:

はい、空白の src イメージを数える必要があります

空の src 属性を持つ画像の数を確認するには:

var count = 0
for(var i = 0; i < images.length; i++){
    if(images[i].src)
        count++;
}
于 2012-12-06T10:11:23.290 に答える
1

最初に jQuery ライブラリを追加し、次のコードを書き留めて画像数を調べます。

var imageCount = 0;
$(document).ready(function(){
   $('div').children('img').each(function(index,item){
       if($(this).attr('src') == "" || $(this).attr('src') == undefined)
       {
           count++;
       }
   });
   alert(count);
});

JavaScript のみを使用している場合は、以下のコードを使用してください:-

 for(j=0;j < document.getElementsByTagName('img').length;j++)
                {
                    if(document.getElementsByTagName('img')[j].getAttribute('src') == "")
                    {
                        count++
                    }

                }

これがうまくいかない場合、またはこれ以外のものが必要な場合は、確認してお知らせください。

よろしくドゥルガプラサド

于 2012-12-06T10:12:40.327 に答える
0

あなたのhtmlコードはあまり明確ではありませんあなたはそれらがhtml拡張子を持つjpegファイルでない限りあなたはソースとしてhtmlファイルを持つimgを持つことができません

<img src="somepage.html">

必要なものをリンクしてアンカータグを付けたい場合は、おそらくそれが原因
です
<a href="somepage.html" ><img src="picsrc.jpg"></a>

于 2012-12-06T10:10:35.623 に答える
0

次のようなものを使用できる場所で、最初にjQueryを理解してください。

$('img').each(function(index) {
    alert(index + ': ' + $(this).text());
});
于 2012-12-06T10:12:53.290 に答える