jQuery圖片加載顯示loading效果
在很多時(shí)候我們需要用到圖片加載功能,在網(wǎng)上搜資料后就想為了以后使用方便重新整理了下,結(jié)果如圖:
最后一張是加載失敗顯示的圖片,沒找到合適的圖片,先用他頂替。
頁面引用
<div class="container"> <div class="row block" id="img-list"> <div class="col-md-3"> <img src="/Assets/OnePiece/1.jpg" class="img-thumbnail"> </div> <div class="col-md-3"> <img src="/Assets/OnePiece/2.jpg" class="img-thumbnail"> </div> <div class="col-md-3"> <img src="/Assets/OnePiece/3.jpg" class="img-thumbnail"> </div> <div class="col-md-3"> <img src="/Assets/OnePiece/4.jpg" class="img-thumbnail"> </div> <div class="col-md-3"> <img src="/Assets/OnePiece/5.jpg" class="img-thumbnail"> </div> <div class="col-md-3"> <img src="/Assets/OnePiece/6.jpeg" class="img-thumbnail"> </div> <div class="col-md-3"> <img src="/Assets/OnePiece/7.jpg" class="img-thumbnail"> </div> <div class="col-md-3"> <img src="/Assets/OnePiece/8.jpg" class="img-thumbnail"> </div> </div> </div> <script src="~/Scripts/ImgLoading/ImgLoading.js"></script> <script> $("#img-list").ImgLoading({ errorimg: "/Scripts/ImgLoading/images/noimage.png", loadimg: "/Scripts/ImgLoading/images/load.gif", timeout: 800 }); </script>
下面是插件腳本,為了突出加載的效果就加上了延遲時(shí)間。
;(function ($) { $.fn.extend({ ImgLoading: function (options) { var defaults = { errorimg: "http://www.oyly.net/Images/default/Journey/journeydetail.png", loadimg: "http://www1.ytedu.cn/cnet/dynamic/presentation/net_23/images/loading.gif", Node: $(this).find("img"), timeout: 1000 }; var options = $.extend(defaults, options); var Browser = new Object(); var plus = { BrowserVerify:function(){ Browser.userAgent = window.navigator.userAgent.toLowerCase(); Browser.ie = /msie/.test(Browser.userAgent); Browser.Moz = /gecko/.test(Browser.userAgent); }, EachImg: function () { defaults.Node.each(function (i) { var img = defaults.Node.eq(i); plus.LoadEnd(Browser, img.attr("imgurl"), i, plus.LoadImg); }) }, LoadState:function(){ defaults.Node.each(function (i) { var img = defaults.Node.eq(i); var url = img.attr("src"); img.attr("imgurl", url); img.attr("src",defaults.loadimg); }) }, LoadEnd: function (Browser, url, imgindex, callback) { var val = url; var img = new Image(); if (Browser.ie) { img.onreadystatechange = function () { if (img.readyState == "complete" || img.readyState == "loaded") { callback(img, imgindex); } } } else if (Browser.Moz) { img.onload = function () { if (img.complete == true) { callback(img, imgindex); } } } img.onerror = function () { img.src = defaults.errorimg } img.src = val; }, LoadImg: function (obj, imgindex) { setTimeout(function () { defaults.Node.eq(imgindex).attr("src", obj.src); }, defaults.timeout); } } plus.LoadState(); plus.BrowserVerify(); plus.EachImg(); } }); })(jQuery);
腳本是從網(wǎng)上搜索代碼之后整理的,也是第一次寫插件,如果有啥寫的不對的,還請多多指教!
本文已被整理到了《jquery圖片加載方法匯總》 ,歡迎大家學(xué)習(xí)閱讀。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- jQuery實(shí)現(xiàn)彩帶延伸效果的網(wǎng)頁加載條loading動畫
- jquery顯示loading圖片直到網(wǎng)頁加載完成的方法
- 基于jquery的loading 加載提示效果實(shí)現(xiàn)代碼
- jquery表格datatables實(shí)例解析 直接加載和延遲加載
- jquery實(shí)現(xiàn)界面無刷新加載登陸注冊
- jQuery實(shí)現(xiàn)根據(jù)滾動條位置加載相應(yīng)內(nèi)容功能
- 基于jQuery實(shí)現(xiàn)點(diǎn)擊列表加載更多效果
- jquery zTree異步加載、模糊搜索簡單實(shí)例分享
- jquery加載頁面的方法(頁面加載完成就執(zhí)行)
- jquery.lazyload 實(shí)現(xiàn)圖片延遲加載jquery插件
相關(guān)文章
jQuery-Citys省市區(qū)三級菜單聯(lián)動插件使用詳解
這篇文章主要為大家詳細(xì)介紹了jQuery-Citys省市區(qū)三級菜單聯(lián)動插件使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-07-07jquery插件tytabs.jquery.min.js實(shí)現(xiàn)漸變TAB選項(xiàng)卡效果
這篇文章主要介紹了jquery插件tytabs.jquery.min.js實(shí)現(xiàn)漸變TAB選項(xiàng)卡效果,實(shí)例分析了tytabs.jquery.min.js插件實(shí)現(xiàn)tab選項(xiàng)卡切換效果的使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-08-08牛叉的Jquery——Jquery與DOM對象的互相轉(zhuǎn)換及DOM的三種操作
Jquery對象就是通過jQuery包裝DOM對象后產(chǎn)生的對象,jQuery對象是jQuery獨(dú)有的,其可以使用jQuery里的方法,本文給大家介紹Jquery對象就是通過jQuery包裝DOM對象后產(chǎn)生的對象,jQuery對象是jQuery獨(dú)有的,其可以使用jQuery里的方法。感興趣的朋友可以參考下2015-10-10使用簡潔的jQuery方法實(shí)現(xiàn)隔行換色功能
本篇文章主要介紹了使用簡潔的jQuery方法實(shí)現(xiàn)隔行換色功能。需要的朋友可以過來參考下,希望對大家有所幫助2014-01-01基于 jQuery 實(shí)現(xiàn)鍵盤事件監(jiān)聽控件
這篇文章主要介紹了基于 jQuery 的鍵盤事件監(jiān)聽控件,需要的朋友可以參考下2019-04-04