2016-11-10 8 views
0
$(window).scroll(function() {  
    var scroll = $(window).scrollTop(); 
    if (scroll >= 50) { 
     $("header").addClass("sticky"); 
     $('header .logo a img').attr('src', $('header .logo a img').data("hover")); 
    } else { 
     $("header").removeClass("sticky"); 
     $("header").addClass(""); 
     $('header .logo a img').attr('src', $('header .logo a img').data("src")); 
    } 
}); 

最初のものは動作しますが、srcはもう戻ってこないです。これはどのように行うべきですか?あなたが.data("src")を行うとデータ属性付き画像スイッチ

<img src="img/logo2.png" data-hover="img/logo.png" alt="" class="img-responsive" /> 
+0

画像にdata-srcが含まれていないためです。 –

答えて

5

を使用し、より良い、.dataを使用しないでください。

<img src="img/logo2.png" data-src="img/logo2.png" data-hover="img/logo.png" alt="" class="img-responsive" /> 
1

Javascriptを画像要素にdata-src属性を探しているが、あなたの画像要素はsrcを持っています。

はあなたがアクセスしようとdata-src属性を追加する必要があり.attr("data-hover").attr("src")

+1

は動作しません。これは、以前の操作で上書きされたためです。 –

+0

ああ、正しいですが、 '.attr'を使った方が' .data'よりも優れています。 – Starwave

+0

この場合、 '.data( 'src')'は間違っています。 –

関連する問題