0

jqueryコードを使用して、delaySrcという新しい属性をimgタグに追加し、src属性の値をdiv内のすべてのimgタグに変更しようとしました。

<div class="diagnostic_picture"><img src="test1.gif" /></div>
<div class="diagnostic_picture"><img src="test2.gif" /></div>
<div class="diagnostic_picture"><img src="test3.gif" /></div>

$(".diagnostic_picture img").each(function () {
        var img = $(this);
        img.attr("delaySrc", function () { img.attr("src") })
        img.attr("src", 'images/ajax-loader.gif');
});

src属性値は変更されていますが、新しい属性がdiv内のすべてのimgタグに追加されるわけではありません。私が間違っているところを教えてください。コードで何を変更するか。ありがとう

4

4 に答える 4

2

これを試して

$(function(){
$(".diagnostic_picture img").each(function () {
        var img = $(this);
        img.attr("delaySrc",img.attr("src"));
        img.attr("src", 'image_url');
});
});
于 2012-06-15T13:08:32.433 に答える
1
$(".diagnostic_picture img").each(function () {
        var img = $(this);
        img.attr("delaySrc", img.attr("src"));
        img.attr("src", 'images/ajax-loader.gif');
});
于 2012-06-15T13:08:11.083 に答える
1

ライブデモ

    $(".diagnostic_picture img").each(function () {
      var img = $(this);
      img.attr("delaySrc", function () { return img.attr("src"); });
      img.attr("src", 'images/ajax-loader.gif');   
      alert(img.attr('delaySrc'));                                           
      alert(img.attr('src'));                                       
    });​

また

ライブデモ

$(".diagnostic_picture img").each(function () {
        var img = $(this);
        img.prop("delaySrc", function () { return img.prop("src") })
        img.prop("src", 'images/ajax-loader.gif');                                           
        alert(img.prop('delaySrc'));                                           
        alert(img.prop('src'));     
});
​
于 2012-06-15T13:08:26.877 に答える
1

に渡された関数から値を返す必要がありますattr

img.attr("delaySrc", function() { return img.attr("src"); });

または、もっと簡単に、値を渡すだけです。

img.attr("delaySrc", img.attr("src"));
于 2012-06-15T13:08:59.870 に答える