2012-05-06 131 views
1

我試圖在博客博客上實現延遲加載,但我遇到了一些問題。有問題的延遲加載插件是這一個:http://www.appelsiini.net/projects/lazyload懶惰在Blogger上加載

所以在文檔中,它說,這些圖像是延遲加載要把下面的HTML代碼格式:

<img class="lazy" src="img/grey.gif" data-original="img/example.jpg" width="640" heigh="480"> 

因爲它是與案件博客帖子,博主引擎輸出圖像格式如下:

<img class="lazy" src="img/myimage.png" width="640" heigh="480"> 

我的問題是,是否有可能使博客輸出的圖像HTML與第一格式,用「grey.gif」 spaceholder默認所有圖像的圖像src和th e「data-original」屬性具有適當的圖像URL,以便lazyloader實際工作?

在此先感謝您的幫助:-)

回答

1

您可以切換到HTML視圖,然後根據延遲加載腳本的要求修改每個img標籤。

+0

這將是一個有點不切實際的2000+的圖像,不是嗎?我正在尋找一些腳本解決這個問題。無論如何感謝您的建議:-) – Hirvesh

+0

你,你是對的。 。但是,由於HTML內容生成器是博主,因此無法攔截它。 我需要wordpress中的相同功能。所以,在wordpress中,我爲這些圖片創建了一個簡碼。 無論如何,對於博主,你可以使用搜索和替換來替換。 如果它生成,您可以搜索[ rax

+0

感謝您的所有幫助:-) – Hirvesh

-1

你並不需要做的這一切,你可以使用專門爲Blogger博客創建的下面延遲加載腳本

<script type='text/javascript'>//<![CDATA[ (function(a){a.fn.lazyload=function(b){var c={threshold:0,failurelimit:0,event:"scroll",effect:"show",container:window};if(b){a.extend(c,b)}var d=this;if("scroll"==c.event){a(c.container).bind("scroll",function(b){var e=0;d.each(function(){if(a.abovethetop(this,c)||a.leftofbegin(this,c)){}else if(!a.belowthefold(this,c)&&!a.rightoffold(this,c)){a(this).trigger("appear")}else{if(e++>c.failurelimit){return false}}});var f=a.grep(d,function(a){return!a.loaded});d=a(f)})}this.each(function(){var b=this;if(undefined==a(b).attr("original")){a(b).attr("original",a(b).attr("src"))}if("scroll"!=c.event||undefined==a(b).attr("src")||c.placeholder==a(b).attr("src")||a.abovethetop(b,c)||a.leftofbegin(b,c)||a.belowthefold(b,c)||a.rightoffold(b,c)){if(c.placeholder){a(b).attr("src",c.placeholder)}else{a(b).removeAttr("src")}b.loaded=false}else{b.loaded=true}a(b).one("appear",function(){if(!this.loaded){a("<img />").bind("load",function(){a(b).hide().attr("src",a(b).attr("original"))[c.effect](c.effectspeed);b.loaded=true}).attr("src",a(b).attr("original"))}});if("scroll"!=c.event){a(b).bind(c.event,function(c){if(!b.loaded){a(b).trigger("appear")}})}});a(c.container).trigger(c.event);return this};a.belowthefold=function(b,c){if(c.container===undefined||c.container===window){var d=a(window).height()+a(window).scrollTop()}else{var d=a(c.container).offset().top+a(c.container).height()}return d<=a(b).offset().top-c.threshold};a.rightoffold=function(b,c){if(c.container===undefined||c.container===window){var d=a(window).width()+a(window).scrollLeft()}else{var d=a(c.container).offset().left+a(c.container).width()}return d<=a(b).offset().left-c.threshold};a.abovethetop=function(b,c){if(c.container===undefined||c.container===window){var d=a(window).scrollTop()}else{var d=a(c.container).offset().top}return d>=a(b).offset().top+c.threshold+a(b).height()};a.leftofbegin=function(b,c){if(c.container===undefined||c.container===window){var d=a(window).scrollLeft()}else{var d=a(c.container).offset().left}return d>=a(b).offset().left+c.threshold+a(b).width()};a.extend(a.expr[":"],{"below-the-fold":"$.belowthefold(a, {threshold : 0, container: window})","above-the-fold":"!$.belowthefold(a, {threshold : 0, container: window})","right-of-fold":"$.rightoffold(a, {threshold : 0, container: window})","left-of-fold":"!$.rightoffold(a, {threshold : 0, container: window})"})})(jQuery);$(function(){$("img").lazyload({placeholder:"http://i22.servimg.com/u/f22/15/42/72/40/grey10.gif",effect:"fadeIn",threshold:"-50"})})//]]></script>

你可以作爲一個佔位符其他圖片鏈接替換http://i22.servimg.com/u/f22/15/42/72/40/grey10.gif

來源鏈接:http://101helper.blogspot.com/2014/08/how-to-speed-up-your-blogger-blog.html