非常に単純な文字列比較がありますが、チェックは常に失敗します。幅<img>
に基づいてロードされたさまざまな画像をロードしようとしています。window
$(document).ready(function() {
var width = $(window).width();
console.log(width);
$('.slider-image').each(function() {
resize_image( $(this), width );
});
});
$(window).resize(function() {
var width = $(window).width();
$('.slider-image').each(function() {
resize_image( $(this), width );
});
});
function resize_image( image, width ) {
console.log(width);
if( width >= 480 && width < 768 ) {
if(image.attr( 'src' ) != image.data( 'phone-src' ) ); {
console.log( 'resize phone' );
image.attr( 'src', image.data( 'phone-src' ) );
}
} else if ( width >= 768 && width < 960 ) {
if(image.attr( 'src' ) != image.data( 'tablet-src' ) ); {
console.log( 'resize tablet' );
image.attr( 'src', image.data( 'tablet-src' ) );
}
} else if ( width >= 960 ) {
if(image.attr( 'src' ) != image.data( 'desktop-src' ) ); {
console.log( 'resize desktop' );
image.attr( 'src', image.data( 'desktop-src' ) );
}
}
};
今、私がしたいことは、don't replace the src, if the width remains within the borders
. src
属性に既にその属性があるかどうかを確認してこれを実行しようとしていdata
ますが、Chrome インスペクターでは両方の属性が同じですが、常に等しくないため、文字列チェックは失敗します。なぜこれが起こるのですか?
ちなみに、どちらの文字列も画像の URL です。