0

blueimp galleryの jQuery バージョンを使用しています。スライドショー ページで Lazy Load を使用して、ユーザーがスクロールするときにサムネイルを読み込みます。最初のページの読み込み時にすべてのサムネイルが読み込まれるわけではなく、スクロールしなければ見えない位置にあるサムネイルは blueimp ギャラリーのサムネイル インジケーターに表示されないため、次のようにリンク タグに data-thumbnail 属性を設定します。

<a href="photos/1-full.jpg" data-thumbnail="photos/1-thumb.jpg">
  <img data-original="photos/1-thumb.jpg" alt="Image 1" />
</a>

ただし、Lazy Load によって設定されたプレースホルダー画像である image タグの src 属性からサムネイルを読み込もうとしているようです。

私はそれを正しくやっていますか?

4

1 に答える 1

0

これには、実際には blueimp ギャラリー スクリプト自体の変更が含まれます。変更点は以下の通りです。

--- a/js/blueimp-gallery-indicator.js
+++ b/js/blueimp-gallery-indicator.js
@@ -58,10 +58,10 @@
                 thumbnail;
             if (this.options.thumbnailIndicators) {
                 thumbnail = obj.getElementsByTagName && $(obj).find('img')[0];
-                if (thumbnail) {
-                    thumbnailUrl = thumbnail.src;
-                } else if (thumbnailProperty) {
+                if (thumbnailProperty) {
                     thumbnailUrl = this.getItemProperty(obj, thumbnailProperty);
+                } else if (thumbnail) {
+                    thumbnailUrl = thumbnail.src;
                 }
                 if (thumbnailUrl) {
                     indicator.style.backgroundImage = 'url("' + thumbnailUrl + '")';
             }

そして、この変更を縮小されたファイルに伝播します。

于 2015-07-22T18:52:37.510 に答える