すべての 'img data-src'を 'img src'に変更することにより、イメージの読み込みを遅らせるこのコードがあります。要素に2つの特定のクラスがある場合にのみ関数をトリガーする方法
function init() {
var imgDefer = document.getElementsByTagName('img');
for (var i=0; i<imgDefer.length; i++) {
if(imgDefer[i].getAttribute('data-src')) {
imgDefer[i].setAttribute('src',imgDefer[i].getAttribute('data-src'));
} } }
window.onload = init;
現在、ページが読み込まれたときにトリガされます。
<li class="lazy hidden baratheon packcore" data-filtertext="01048"><a><div><img data-src="img/01048.jpg" class="cardimg"></div></a></li>
.hiddenは、割り当てられた表示です::、.SHOWは、ディスプレイを何も持っていない、それは要素が両方のクラスが.lazyている場合にのみ、トリガーと
を.SHOWするために私が欲しいの要素すべてがこのようになりです:ブロックし、.addClass 'show'と.removeClass 'hidden'となるさまざまなクリックがあります。
私は
$('lazy, .show') (function() {
の様々な組み合わせで周りにプレイしましたが、私ははっきりと私は私がやったと思ったよりもさらに少ない理解し、それを動作させることはできません。
特定の2つのクラスを持つ要素が存在し、それらの要素にのみ関数を適用すると、関数をトリガーするにはどうすればよいですか?
これは、常に2つのクラスを探したり、.addclassの 'show'スクリプトに追加して、.showが追加されたときに自動的に実行されるようにするのがよいでしょうか?
編集..だけでなく、SRC
は '.lazy.show'(間にスペースなし)私が試した – marekful
@marekfulをお試しください: (var i = 0; i