我有一個有很多圖像的頁面。如果用戶還沒有向下滾動到圖像所在的位置,瀏覽器加載它們是沒有意義的。 我想將img
元素綁定到一個事件處理函數,當包含div
的元素可見時(在用戶滾動到足以使元素位於視口中)時觸發該事件處理函數。這個處理程序將重寫src
屬性,並且圖像將會加載。當向用戶顯示元素時觸發哪個事件?
我在找什麼活動?
我有一個有很多圖像的頁面。如果用戶還沒有向下滾動到圖像所在的位置,瀏覽器加載它們是沒有意義的。 我想將img
元素綁定到一個事件處理函數,當包含div
的元素可見時(在用戶滾動到足以使元素位於視口中)時觸發該事件處理函數。這個處理程序將重寫src
屬性,並且圖像將會加載。當向用戶顯示元素時觸發哪個事件?
我在找什麼活動?
沒有原生的jQuery事件正在做你想做的事。您需要使用scroll
事件來獲取滾動位置,獲取可見圖像並加載它們。
已經有插件爲你做這件事。也許出現的jQuery插件,你在找什麼:http://code.google.com/p/jquery-appear/
這可能是這個問題的一個副本:Make images load when they enter visible section of browser?
$(window).scroll(function(){
// if user has scrolled to 250px
if ($(this).scrollTop() > 250){
// load your images,
}
})
一個更好的方法將被放置在div
底部和使用mouseenter
事件來檢測用戶是否想要更多圖片。
$('#the_bottom_div').mouseenter(function(){
// If user has placed mouse on bottom,load images (like facebook does)
})
你可以只使用任何延遲加載的jQuery插件像這樣的:http://www.appelsiini.net/projects/lazyload – xbonez
有沒有事件本身。您正在尋找的技術稱爲延遲加載。 http://stackoverflow.com/questions/8509878/jquery-lazy-loading-image-with-throttling –