2017-08-24 7 views
0

使用benpickles onSCreenプラグイン(https://benpickles.github.io/onScreen/)私が試してみて、画面上のvisisbleているすべての画像上のjQueryのfilter()メソッドを持つすべての要素の画像srcを変更するために次のコードを使用しています内のこの/要素を取得します。 。jQueryの - フィルタ()

<img class="img-d" src="old-image-23.jpg" data-src="new-image-37.jpg"/> 
<img class="img-d" src="old-image-54.jpg" data-src="new-image-7.jpg"/> 
<img class="img-d" src="old-image-12.jpg" data-src="new-image-98.jpg"/> 


jQuery(function() { 
    setInterval(function() { 
    jQuery('.img-d') 
     .filter(":onScreen") 
     .attr('src', jQuery(this).data('src')) 
    }, 
    1000) 
}); 

しかし、は、img srcを変更しようとすると機能しません。

誰でも手助けできますか?

+0

jQueryの代わりに '$'を使用してみませんか? –

+0

@ N.Ivanov $の代わりにjQueryを使うことができます –

答えて

0

あなたは、各要素にアクセスするためのコールバックでattr()を使用し、機能は非常にあなたがするたびにjQuery入力する必要はありません$上で閉じどのようにデータの属性が

jQuery(function($) { 
    setInterval(function() { 
    $('.img-d').filter(":onScreen").attr('src', function() { 
     return $(this).data('src'); 
    }); 
    }, 1000) 
}); 

注意を重視返すことができます。
なぜ毎秒これを行うのですか?