lazysizesでスムーススクロールの位置がずれる・・

らら
らら

はじめに

lazysizesでスムーススクロールが位置がずれるってことで・・

調べてみた・・

かいせき・・

lazysizesはスクロールしたときに画像をdata-srcからsrcへ移され画像がロードされる仕組み

この遅延読み込みが、スクロール位置の高さを計算するのに、$(window).on('load', function()とかでも正しく計算できない・・

下記で完了イベントがないか、見てみたが・・ない・・・

https://github.com/aFarkas/lazysizes

強制表示関数 jquery版


function removeLazyLoad() {
	$('[data-src]').each(function(index, element) {
		$(this).attr('src',$(this).attr('data-src'));
	});
}

上記を・・#があるときだけ・・data-srcからsrcへ強制する・・みたいな処理で

URLに#がない場合は、遅延読み込みして、ある場合は強制表示・・・


	var Hash = location.hash;
	if(Hash) {
		removeLazyLoad();
	}

あとは、自身のスムーススクロールコードに埋め込んで完了です。

さいごに

メモです・・

では・・

関連記事