最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

js中Image對象以及對其預加載處理示例

 更新時間:2013年11月20日 16:15:48   作者:  
現(xiàn)在的網(wǎng)頁中經(jīng)常會有一些圖像連接,當鼠標指向它的時候,圖像換成另外一幅圖像,它們都是先預讀圖像的,下面也有個不錯的實例,感興趣的朋友可以參考下
不顯示在文檔中的 Image 對象

對于不顯示在文檔中的 Image 對象時用 var 語句定義的:
復制代碼 代碼如下:

var myImage = new Image();或
var myImage = new Image(<圖片地址字符串>);

然后就可以像一般 Image 對象一樣對待 myImage 變量了。不過既然它不顯示在文檔中,以下屬性:lowsrc, width, height, vspace, hspace, border 就沒有什么用途了。一般這種對象只有一個用:預讀圖片(preload)。因為當對對象的 src 屬性賦值的時候,整個文檔的讀取、JavaScript 的運行都暫停,讓瀏覽器專心的讀取圖片。預讀圖片以后,瀏覽器的緩存里就有了圖片的 Copy,到真正要把圖片放到文檔中的時候,圖片就可以立刻顯示了?,F(xiàn)在的網(wǎng)頁中經(jīng)常會有一些圖像連接,當鼠標指向它的時候,圖像換成另外一幅圖像,它們都是先預讀圖像的。

預讀圖像的 JavaScript 例子
復制代碼 代碼如下:

var imagePreload = new Image();

imagePreload.src = '001.gif';
imagePreload.src = '002.gif';
imagePreload.src = '003.gif';

以上例子適合預讀少量圖片。
復制代碼 代碼如下:

function imagePreload() {
var imgPreload = new Image();
for (i = 0; i < arguments.length; i++) {
imgPreload.src = arguments[i];
}
}

imagePreload('001.gif', '002.gif', '003.gif', '004.gif', '005.gif');

以上例子適合預讀大量圖片。

因為許多瀏覽器存在的緩存問題。當圖片加載過一次之后,如果再有對該圖片的請求時,由于瀏覽器已經(jīng)緩存住這張圖片了,不會再發(fā)起一次新的請求,而是直接請緩存中加載過來,經(jīng)過分析,可以使用各個瀏覽器所兼容的Image的屬性--complete。所以在圖片onload事件之前先對這個值做下判斷即可,如下例子:
復制代碼 代碼如下:

function loadImage(url, callback) {
var img = new Image(); //創(chuàng)建一個Image對象,實現(xiàn)圖片的預下載
img.src = url;

if (img.complete) { // 如果圖片已經(jīng)存在于瀏覽器緩存,直接調(diào)用回調(diào)函數(shù)
callback.call(img);
return; // 直接返回,不用再處理onload事件
}

img.onload = function () { //圖片下載完畢時異步調(diào)用callback函數(shù)。
callback.call(img);//將回調(diào)函數(shù)的this替換為Image對象
};
};

相關(guān)文章

  • layer.confirm()右邊按鈕實現(xiàn)href的例子

    layer.confirm()右邊按鈕實現(xiàn)href的例子

    今天小編就為大家分享一篇layer.confirm()右邊按鈕實現(xiàn)href的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • JS獲取當前網(wǎng)頁大小以及屏幕分辨率等

    JS獲取當前網(wǎng)頁大小以及屏幕分辨率等

    這篇文章主要介紹了JS獲取當前網(wǎng)頁大小以及屏幕分辨率等,方法雖簡單,但比較實用,需要的朋友可以參考下
    2014-09-09
  • JavaScript中map的用法示例詳解

    JavaScript中map的用法示例詳解

    這篇文章主要給大家介紹了關(guān)于JavaScript中map用法的相關(guān)資料,JavaScript的map方法用于對數(shù)組中的每個元素執(zhí)行一個函數(shù),并返回一個新數(shù)組,它接受一個回調(diào)函數(shù)作為參數(shù),該函數(shù)可以訪問當前元素、索引和原始數(shù)組,需要的朋友可以參考下
    2024-12-12
  • 為什么js中不推薦使用eval函數(shù)(原因分析)

    為什么js中不推薦使用eval函數(shù)(原因分析)

    'eval'函數(shù)是javascript中的一個內(nèi)置函數(shù),它的主要作用是將傳入的字符串作為代碼來執(zhí)行,這篇文章主要介紹了為什么js中不推薦使用eval函數(shù),需要的朋友可以參考下
    2023-10-10
  • JS獲取圖片實際寬高及根據(jù)圖片大小進行自適應(yīng)

    JS獲取圖片實際寬高及根據(jù)圖片大小進行自適應(yīng)

    圖片實際寬高使用js進行獲取以及根據(jù)圖片大小進行自適應(yīng),此功能個人感覺比較實用,在此貢獻出來,希望對大家有所幫助
    2013-08-08
  • 微信小程序使用前置攝像頭拍照

    微信小程序使用前置攝像頭拍照

    這篇文章主要為大家詳細介紹了微信小程序使用前置攝像頭拍照,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-10-10
  • js獲取當前日期前七天的方法

    js獲取當前日期前七天的方法

    這篇文章主要介紹了js獲取當前日期前七天的方法,涉及javascript中for語句及日期操作的技巧,需要的朋友可以參考下
    2015-02-02
  • Bootstrap table 服務(wù)器端分頁功能實現(xiàn)方法示例

    Bootstrap table 服務(wù)器端分頁功能實現(xiàn)方法示例

    這篇文章主要介紹了Bootstrap table 服務(wù)器端分頁功能實現(xiàn)方法,結(jié)合實例形式詳細分析了Bootstrap table 服務(wù)器端后臺交互與分頁功能相關(guān)操作技巧,需要的朋友可以參考下
    2020-06-06
  • 微信小程序自定義組件與頁面的相互傳參

    微信小程序自定義組件與頁面的相互傳參

    這篇文章主要為大家介紹了微信小程序自定義組件與頁面的相互傳參過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-04-04
  • 修改 bootstrap table 默認detailRow樣式的實例代碼

    修改 bootstrap table 默認detailRow樣式的實例代碼

    這篇文章主要介紹了修改 bootstrap table 默認detailRow樣式的實例代碼,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-07-07

最新評論

米脂县| 雅安市| 台中县| 赞皇县| 东光县| 六枝特区| 平江县| 自治县| 恩平市| 岗巴县| 本溪市| 平罗县| 南召县| 吉木萨尔县| 年辖:市辖区| 正阳县| 新乡市| 吴川市| 天等县| 周宁县| 盈江县| 象州县| 胶南市| 新竹县| 龙井市| 黄陵县| 四子王旗| 温宿县| 祁东县| 高雄县| 福安市| 中西区| 吉水县| 固原市| 满城县| 嵊州市| 郓城县| 高邑县| 盱眙县| 武清区| 洱源县|