1. 程式人生 > >jQuery實現頁面滾動圖片按需載入(轉載)

jQuery實現頁面滾動圖片按需載入(轉載)

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>jquery scrolling</title>
    <link rel="stylesheet" href="css/style.css"/>
</head>
<body>
    <!--imgbox-->
    <div class="wrapper">
        <div class="img-box">
            <img src="img/1.png" />
        </div>
        <div class="img-box">
            <img src="img/2.png" />
        </div>
        <div  class="img-box">
            <img src="img/3.png" />
        </div>
        <div class="img-box">
            <img data-url="img/4.png" src="img/pix.png" />
        </div>
        <div class="img-box">
            <img data-url="img/5.png" src="img/pix.png" />
        </div>
        <div class="img-box">
            <img data-url="img/6.png" src="img/pix.png" />
        </div>
        <div class="img-box">
            <img data-url="img/7.png" src="img/pix.png" />
        </div>
        <div class="img-box">
            <img data-url="img/8.png" src="img/pix.png" />
        </div>
        <div class="img-box">
            <img data-url="img/9.png" src="img/pix.png" />
        </div>
        <div class="img-box">
            <img data-url="img/10.png" src="img/pix.png" />
        </div>
        <div class="img-box">
            <img data-url="img/11.png" src="img/pix.png" />
        </div>
        <div class="img-box">
            <img data-url="img/12.png" src="img/pix.png" />
        </div>
        <div class="img-box">
            <img data-url="img/13.png" src="img/pix.png" />
        </div>
        <div class="img-box">
            <img data-url="img/14.png" src="img/pix.png" />
        </div>
        <div class="img-box">
            <img data-url="img/15.png" src="img/pix.png" />
        </div>
        <div class="img-box">
            <img data-url="img/16.png" src="img/pix.png" />
        </div>
        <div class="img-box">
            <img data-url="img/17.png" src="img/pix.png" />
        </div>
        <div class="img-box">
            <img data-url="img/18.png" src="img/pix.png" />
        </div>
        <div class="img-box">
            <img data-url="img/19.png" src="img/pix.png" />
        </div>
        <div class="img-box">
            <img data-url="img/20.png" src="img/pix.png" />
        </div>
    </div>

    <script src="js/jquery_1.9.js"></script>
    <script src="js/main.js"></script>
</body>
</html>
*{
    margin: 0;
    padding: 0;
}
/*wrapper*/
.wrapper{
    width: 500px;
    height: 5000px;
    margin: auto;
}
.img-box{
    width: 100%;
    margin-bottom: 20px;
    padding-bottom: 10px;
    height: 260px;
    text-align: center;
    border-bottom: 2px dashed #ccc;
}
$(function(){
    var $wd = $(window),
        $img = $('img'),
        imgTop,          //圖片距離頂部高度
        scTop,             //滾動條高度
        wH;           //視窗高度
    wH = $wd.height();         //獲得可視瀏覽器的高度
    $wd.scroll( function() {
        scTop = $wd.scrollTop();       //獲取滾動條到頂部的垂直高度
        $img.each(function(){
            imgTop =  $(this).offset().top;
            if(imgTop - wH < scTop &&     //圖片必須出現在視窗底部上面
                imgTop - wH > 0 &&        //排除首頁圖片
                $(this).attr('src') != $(this).data('url')){          //排除已經載入過的圖片
                   $(this).attr({
                       src: $(this).data('url')
                   });
            }
        });
    });
});

原文連結:https://my.oschina.net/leipeng/blog/221911

相關推薦

jQuery實現頁面滾動圖片載入轉載

<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>jquery scrolling</title>

使用jquery實現頁面滾動到底部自動載入新的資訊

//定義載入一次的資訊物件數量 public class Constant { public final static int DEFAULT_FIRST_COUNT = 8;//第一次列

圖片載入判斷一個元素是否在可視區思路

首先html程式碼結構如下 <body> <div id='container'>    ```     其他內容    ``` <div id='abc'> 是否在可視區 </div>

jQuery實現圖片載入的方法,當要顯示內容的高度超過了頁面的高度,載入,根據滾動條的位置來判斷頁面顯示的內容

實現圖片按需載入的方法,當要顯示內容的高度超過了頁面的高度,按需載入,根據滾動條的位置來判斷頁面顯示的內容 這個類似於京東或淘寶頁面,根絕頁面的滾動,顯示下面的內容 如下圖所示,一開始並不是所有的圖片都顯示,當滾動條移動到頁面最下面的時候,再顯示下面的內容   解決思路:通過判斷滾動條是

基於jQuery實現頁面滾動時頂部導航顯示隱藏效果

center query styles 顯示 true function viewport top int <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset=

基於webpack實現react元件的載入

隨著web應用功能越來越複雜,模組打包後體積越來越大,如何實現靜態資源的按需載入,最大程度的減小首頁載入模組體積和首屏載入時間,成為模組打包工具的必備核心技能。 webpack作為當下最為流行的模組打包工具,成為了react、vue等眾多熱門框架的官方推薦打包工具。其提供的Code Splitt

jQuery實現頁面滾動時頂部動態顯示隱藏

很多時候你會看到頁面上有一個始終固定在網頁頂部的導航選單,當頁面向下滾動的時候,導航選單動態隱藏,頁面滾動到頂部時,導航選單動態顯示,淘寶也採用過此效果,很不錯,當然,裡面使用了CSS3動畫效果,不支援低版本瀏覽器。程式碼相當的簡單,只需幾行就搞定。 &l

jQuery實現頁面滾動條自動滾動到需要的位置

程式碼如下: <script> $(function(){         $('html,body').animate({scrollTop:1000},'slow'); }) </script> 解讀程式碼:在載入html頁面的body

19 React——Ant Design載入樣式檔案

      在上篇文章中我們簡單介紹了Ant Design元件的使用,但是在使用過程中我們在樣式檔案中直接載入了全部的Antd樣式檔案,這對於前端頁面來說並不符合其開發要求,接下來我們介紹css樣式檔案的按需載入。 1 首先,我們需要在專案檔案中安裝自定義配置的工具。在專案

webpack v3 結合 react-router v4 做 dynamic import — 載入載入

為什麼要做dynamic import? dynamic import不知道為什麼有很多叫法,什麼按需載入,懶載入,Code Splitting,程式碼分頁等。總之,就是在SPA,把JS程式碼分成N個頁面份數的檔案,不在使用者剛進來就全部引入,而是等使用者跳轉路由的時候,再載入對應的JS檔案。這樣做的好處就

【JavaScript】使用純JS實現多張圖片的懶載入附原始碼

一、效果圖如下   上面的效果圖,效果需求如下         1、還沒載入圖片的時候,預設顯示載入圖片背景圖         2、剛開始進入頁面,自動載入第一螢幕的圖片       &

Nginx+Memcache+一致性hash算法 實現頁面分布式緩存

tps ons efi 策略 可擴展性 master () list roo 網站響應速度優化包括集群架構中很多方面的瓶頸因素,這裏所說的將頁面靜態化、實現分布式高速緩存就是其中的一個很好的解決方案... 1)先來看看Nginx負載均衡 Nginx負載均衡依賴自帶的 ng

JS實現定時操作 圖片輪播效果setInterval

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script> window.onload=functi

JQuery中$.ajax()方法參數詳解轉載

瀏覽器 object 服務器 字符串 false type: 要求為String類型的參數,請求方式(post或get)默認為get。註意其他http請求方法,例如put和 delete也可以使用,但僅部分瀏覽器支持。timeout: 要求為Number類型的參數,設置請求超時時

用 Python 和 OpenCV 檢測圖片上的條形碼轉載

  原文地址:http://python.jobbole.com/80448/ 假設我們要檢測下圖中的條形碼: 圖1:包含條形碼的示例圖片 現在讓我們開始寫點程式碼,新建一個檔案,命名為detect_barcode.py,開啟並編碼: Python 1&nbs

jQuery實現圖片加載的方法,當要顯示內容的高度超過了頁面的高度,加載,根據滾動條的位置來判斷頁面顯示的內容

sse delay already tails wait stat sea syn bsp 實現圖片按需加載的方法,當要顯示內容的高度超過了頁面的高度,按需加載,根據滾動條的位置來判斷頁面顯示的內容 這個類似於京東或淘寶頁面,根絕頁面的滾動,顯示下面的內容 如下圖所示,一開

使用jquery實現載入

圖片的延遲載入最常見的是隻載入網頁顯示在螢幕中的圖片,如果使用者沒有滾動到網頁靠下的部分,那圖片就不用顯示了,節省HTTP請求和頻寬,同時提高首屏的載入速度,提高使用者體驗。不會的童鞋拿去研究研究

JQuery實現頁面滾動滾動而動態載入內容的效果

      新浪微博有這個功能,剛才思考一下 ,簡單的寫了一下實現方法,程式碼是Js的.      無可否認,這種方式應該算是web2.0的產物,在使用者體驗上具備很好的感受,除了微博在使用該方式外,另外我還發現有幾個其他性質的網站也在用這種方式,原因是他們的網站頁面比較長,所以使用者在瀏覽的時候隨著滾動條的

頁面滾動圖片等元素動態加載插件jquery.scrollLoading.js

一次 透明圖 需求 ble date 也不能 設置 瀏覽器 ack   如果一個網頁很長,那麽該頁面的加載時間也會相應的較長。而這裏給大家介紹的這個jQuery插件scrollLoading的作用則是,對頁面元素進行動態加載,通俗的說就是滾到哪就加載到哪,屏幕以下看不見的

Vue.js中用webpack合併打包多個元件並實現載入

對於現在前端外掛的頻繁更新,所以多多少少要對元件化有點了解,下面這篇文章主要給大家介紹了在Vue.js中用webpack合併打包多個元件並實現按需載入的相關資料,需要的朋友可以參考下。   前言 隨著移動裝置的升級、網路速度的提高,使用者對於web應用的要求越來越高,web