
文章插圖
輪播圖在我們的web項(xiàng)目中有著廣泛的運(yùn)用,特別是在商城項(xiàng)目中,通常用于對新品、熱銷、促銷等產(chǎn)品的推薦,重要的站點(diǎn)公告也可以采用輪播圖的方式呈現(xiàn) 。現(xiàn)在實(shí)現(xiàn)輪播圖有各種各樣的第三方插件可以用,哪怕是一個完全不懂javascript或者jQuery的新手,也能實(shí)現(xiàn)輪播的效果;但是,作為一個初學(xué)者,我們還是要稍微了解一下原理(大神請無視) 。
實(shí)現(xiàn)輪播的手段其實(shí)有很多,比如移動圖片的位置、設(shè)置圖片的顯示隱藏等都可以實(shí)現(xiàn)輪播切換效果,這里,我們簡單演示移動圖片距離的方式實(shí)現(xiàn)輪播效果 。
首先編寫html頁面并配合簡單的css樣式,代碼如下:
效果如圖1所示:
我們實(shí)現(xiàn)輪播主要是要橫向移動圖片的位置,所以要將圖片浮動成一排,并且要隱藏多余的部分,只顯示出一張圖片,補(bǔ)充css如下:
如圖2所示:
現(xiàn)在我們只能看到一張圖片,其余的因?yàn)槌?slider-box的范圍而被隱藏,如下圖3所示:
其實(shí)移動圖片的原理很簡單,我們只需要不斷改變ul的left值就可以,如下圖4所示:
現(xiàn)在我們需要使用jQuery來不斷的改變這個left值 。
首先,引入jquery-3.2.1.min.js;jq代碼如下:
刷新頁面,效果如圖5所示:
但是,圖片的切換是一瞬間完成的,而且只有一次,并沒有輪播,所以,這并不是我們想要的效果 。輪播肯定是有規(guī)律的隨著時間變化而依次播放,所以,根據(jù)之前我們在《javascript動畫基礎(chǔ)》中講解的,我們必須結(jié)合時間函數(shù)以及時間增量完成動畫效果 。
修改以上jq代碼:
效果如圖6所示:
現(xiàn)在雖然可以按照時間間隔切換圖片,但是在最后一張切換完成后,程序并沒有停止或者復(fù)位圖片,而是繼續(xù)在向后移動ul,所以出現(xiàn)了空白的情況,因?yàn)槲覀兠看我苿拥木嚯x為1920px剛好為圖片的寬度,實(shí)際上圖片只需要切換2次就可以到達(dá)第3張,再切換的話就會出現(xiàn)空白,我們需要先判斷l(xiāng)eft的是否已經(jīng)為3張圖片的寬度總和,即left+5760是否等于0(left為負(fù)值),如果等于0,那么我們需要將ul的left值設(shè)置為0,再從頭開始切換,修改代碼:
效果如圖7所示:
現(xiàn)在圖片只要切換到最后一張,將不會繼續(xù)往后切換,而是回到第一張圖片,重頭切換 。我們也可以使用jQuery提供的animate()方法,讓我們能看到圖片從右向左的切換過程:
效果如圖8所示:
那么,一個簡單的輪播圖,我們就完成了 。實(shí)現(xiàn)輪播的方式很多,這里只是提供一個最基本的思路 。喜歡的朋友可以點(diǎn)個關(guān)注,后期我們會放出進(jìn)階視頻 。
以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請您及時就醫(yī)或請專業(yè)人士給予相關(guān)指導(dǎo)!
「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對您有所幫助:- 性價(jià)比最高曲面屏手機(jī) 曲面屏性價(jià)比最高的手機(jī)
- 1999元手機(jī)性價(jià)比排名 手機(jī)1999元排行
- 還買什么榮耀V40 榮耀v40誰還買
- 游戲直播江湖風(fēng)起云涌 看江湖風(fēng)起云涌
- Redmi游戲手機(jī)月底發(fā)布 Redmi紅米游戲手機(jī)
- 高德地圖預(yù)警導(dǎo)航功能來了 高德地圖導(dǎo)航新功能
- 高德上線車道級導(dǎo)航高清版 高德地圖正式上線了車道級導(dǎo)航高清版
- 續(xù)航性能都很強(qiáng) 續(xù)航能力很強(qiáng)
- 簡歷及圖片 安東尼?拿泰歷個人資料簡介
- 月光生活是什么意思 月光族是什么意思
