網(wǎng)站的全通輪播圖的方法很多,有些圖片做成非常寬(寬大于1200px)。其實(shí)沒必要得很大,京東、淘寶等平臺(tái)的輪播圖采用JS自動(dòng)獲取圖片的主顏色作背景色。這屬于圖片優(yōu)化細(xì)節(jié),有如下優(yōu)點(diǎn)
①最大程度地減小圖片尺寸和大小,減少網(wǎng)頁加載時(shí)間;
②用戶體驗(yàn)自適應(yīng)好,圖片中文字大小合適并不出現(xiàn)橫滾動(dòng)條;
③便于編輯管理,采用新的圖片不需要更改模板CSS樣式;
④主流瀏覽器都兼容性。
全通輪播圖效果展示
參考重慶裝修公司www.v25j.com主頁輪播圖。
運(yùn)用jquery.adaptive-backgrounds.js用來實(shí)現(xiàn)這個(gè)功能,這個(gè)插件能提取圖片的主色,并把它作為其父元素的背景色。
另外一種實(shí)現(xiàn)方法參考《DedeCMS列表頁實(shí)現(xiàn)隔行多行隨意換色》。
結(jié)合SuperSlide,HTML實(shí)例
對(duì)應(yīng)的JS下載鏈接:http://pan.baidu.com/s/1gfzDOiB 密碼:yu55
<!doctype html> <html> <head> <title>自動(dòng)獲取圖片主顏色作輪播圖背景色(superslide)</title> <script type="text/javascript" src='jquery.js'></script> <script type="text/javascript" src="jquery.SuperSlide.2.1.1.js"></script> <script type="text/javascript" src='jquery.adaptive-backgrounds.js'></script> <script type="text/javascript"> $(document).ready(function(){ $.adaptiveBackground.run() }); </script> <style type="text/css"> .img-wrap{width:100%;height:400px;text-align:center} .img-wrap img{width:500px} .slideBox{width:710px;height:230px;overflow:hidden;position:relative;border:1px solid #ddd} .slideBox .hd{ height:15px;overflow:hidden;position:absolute;right:5px;bottom:5px;z-index:1} .slideBox .hd ul{overflow:hidden;zoom:1;float:left} .slideBox .hd ul li{float:left;margin-right:2px;width:15px;height:15px;line-height:14px;text-align:center;background:#fff;cursor:pointer} .slideBox .hd ul li.on{background:#f00;color:#fff} .slideBox .bd{position:relative;height:100%;z-index:0} .slideBox .bd li{zoom:1;vertical-align:middle} .slideBox .bd img{width:450px;height:230px;display:block} </style> </head> <body> <p id="slideBox" class="slideBox"> <p class="hd"> <ul><li>1</li><li>2</li><li>3</li></ul> </p> <p class="bd"> <ul> <li class='img-wrap'><img id="img" src="images/1.jpg" data-adaptive-background></li> <li class='img-wrap'><img id="img" src="images/2.jpg" data-adaptive-background></li> <li class='img-wrap'><img id="img" src="images/3.jpg" data-adaptive-background></li> </ul> </p> <script type="text/javascript">jQuery(".slideBox").slide({mainCell:".bd ul",autoPlay:true});</script> </body> </html>