我正在处理一个同时显示数百张图像的页面。我正在使用延迟加载插件来让页面快速加载。一切正常,但是我添加了一个 jQuery UI 滑块,允许用户通过拖动手柄来放大/缩小图像。如果用户缩小图像,那么以前在首屏下方的图像现在可能已被移动到可见区域。由于未发生滚动,因此未加载图像。
我添加了一个事件来在拖动调整大小手柄时触发加载,但这会导致加载所有图像,而不仅仅是那些进入可视区域的图像。
代码非常简单:
这是连接插件的代码。
$("#pplImages.lazy").lazyload({event : "LoadVisibleImages"});
function LoadVisibleImages() {
$("#pplImages.lazy").trigger("LoadVisibleImages");
}
这是触发从 Slider 加载的代码
$( "#slider" ).slider({
min: 25,
max: 125,
value: 100,
slide: function( event, ui ) {
ResizeImages(ui.value);
}
}).slider().bind({
slidestop : function(event,ui) {LoadVisibleImages();}
});
我正在寻找的是一种仅加载现在可见的图像而不是页面上的所有图像的方法。
谁能看到我做错了什么?