零基礎(chǔ)一篇文章實現(xiàn)網(wǎng)頁輪播圖效果,我太難了啊

你瞅啥篡诽?

有沒有想過崖飘?一直從事流水線操作的你,或許在編程中的流程控制方面天賦異稟杈女。有沒有想過朱浴?一直以來左右逢源的你,或許也能靠手中的鍵盤做點大事达椰?有沒有想過翰蠢?平時好像平淡無奇的你,或許身上埋藏了“程序員”的驚奇骨骼砰碴。

或者躏筏,也許你并沒有!那么跟我一起動手試試就知道了呈枉!

不扯淡趁尼,上干貨!

我們要做的成果展示(輪播圖):


菜單(需要的材料):

  1. html語言(處理頁面結(jié)構(gòu))
  2. css語言(美化頁面)
  3. javaScript語言(讓頁面動起來)

我們分別用3大模塊來單獨實現(xiàn)猖辫,做這個就別想那個

編寫頁面骨架html

  1. 我們在某個文件夾內(nèi)點擊鼠標(biāo)右鍵酥泞,新建一個文本文件,像這樣
  2. 接著我們在里面編寫如下代碼
  3. 標(biāo)簽有單、雙之分啃憎,雙標(biāo)簽以</標(biāo)簽名>為結(jié)束芝囤,標(biāo)簽內(nèi)的標(biāo)簽是裝在里面的東西
  4. 下面的結(jié)構(gòu)是yong_hu_kan包含lun_bo_tu_he_zi
<html>
    <head>
        <title>這是我的輪播圖頁面喲</title>
    </head>
    <body>
        <div id="yong_hu_kan">
           <div id="lun_bo_tu_he_zi">
                <!-- 這里未來放點東西 -->
            </div>     
        </div>
    </body>
</html>
  1. 接著在里面放入3組<div>盒子 <img>圖片(http的那個是圖片地址,不要去手抄喲

    1. <div>
                          <img src="http://m.qpic.cn/psc?/V10aHtC10oCJrV/OgsY8p8GsL2M2s50.OYmelxYkBSa1PKhQg7hvHxY6j1IRViMD7DJodEmEq0C005P2hRwMZljkSalJq5OdxLVEiIB4AS6aup2wvsDQ2ZVQZM!/b&bo=yADIAAAAAAADByI!&rf=viewer_4">
                      </div>
                      <div>
                          <img src="http://m.qpic.cn/psc?/V10aHtC10oCJrV/OgsY8p8GsL2M2s50.OYmesH11iotzh7lM0G292gt2X2cmdsxkgO5bl2O4yRGf9GN2HWz.D661rMtBCu5EbBQAwjheXdpWZllS6w9itABFIM!/b&bo=yADIAAAAAAACFzM!&rf=viewer_4">
                      </div>
                      <div>
                          <img src="http://m.qpic.cn/psc?/V10aHtC10oCJrV/OgsY8p8GsL2M2s50.OYmelxYkBSa1PKhQg7hvHxY6j1IRViMD7DJodEmEq0C005P2hRwMZljkSalJq5OdxLVEiIB4AS6aup2wvsDQ2ZVQZM!/b&bo=yADIAAAAAAADByI!&rf=viewer_4">
                      </div>
      
      
  2. 接著運行程序,最簡單的方法就是把剛才的編寫的文件用鼠標(biāo)左鍵脫到瀏覽器中再放手,如無意外悯姊,你將看到<img src="https://graph.baidu.com/resource/2229d403d2fb9ddab946f01581441581.png" alt="image-20200211222322610" style="zoom:50%;" />

兄嘚,那么你的html頁面就完成了

CSS美化一下

敲黑板了羡藐!

image-20200211225738616

  1. 在head標(biāo)簽中加入如下代碼,設(shè)置他們的寬高

    1. <style>
          #yong_hu_kan {
              width:200px;
              height:200px;
          }   
          #lun_bo_tu_he_zi {
            width:600px;
              height:200px;
          }
      </style>
      
      
  2. 讓圖片橫著排列 ,那就讓luo_bo_tu_he_zi 里面的3個div都向左漂浮就好,繼續(xù)在style標(biāo)簽中加入如下代碼

    1. #lun_bo_tu_he_zi div {
          float:left;
      }
      
  3. 好了悯许,記得Ctrl S 鍵來保存一下仆嗦,保存以后,把文件丟到瀏覽器中先壕,你將看到:
    image-20200211230247790
  4. 接下來還有一個障礙要掃清(別問為什么瘩扼,我太難了)

    1. image-20200211231332879
    2. 接著我們在style標(biāo)簽中加入

    3. body { margin:0px; }
      

至此CSS美化就搞定!@拧集绰!

JavaScript篇

這一篇呢,想比之前的會難一些谆棺,出現(xiàn)的知識盲點也是無法避免的栽燕,由于篇幅有限,你只用知道有什么用包券、怎么用就好了

先來個熱場纫谅,在body標(biāo)簽的結(jié)束標(biāo)簽上方編寫

     <script>
            // 這里未來會放代碼,下面的body不要照抄溅固,
            // 寫出來是讓大家知道位置
     </script>
</body>
img
image-20200211235418518

首先我們先分析一下付秕,咱們現(xiàn)在3張圖應(yīng)該都橫向排列了,那么接下來分解一下任務(wù)侍郭,代碼寫到script標(biāo)簽里面

  1. 獲取已經(jīng)設(shè)置600px寬度的lun_bo_tu_he_zi盒子(內(nèi)有3組div img)

    1. var ele = document.getElementById('lun_bo_tu_he_zi')
      
  2. 讓圖1向左移動询吴,出現(xiàn)圖2,再向左移動亮元,出現(xiàn)圖3

    1. ele.style.left = ele.offsetLeft - 200   'px';
      
    2. 以上代碼的意思是 描述位置:設(shè)置有多靠左 = 現(xiàn)在有多靠左 - 200(圖片寬) 拼接 'px'

  3. 每次的移動需要間隔1秒再移動(代碼是固定格式

    1. setInterval(function() {
          // 你要做的是
      },1000)
      
  4. 目前設(shè)置了盒子的left屬性猛计,盒子還不能移動,原因是默認(rèn)布局方式類似擺貨架爆捞,左邊是墻壁奉瘤,沒法讓其往左邊移動,因此我們給他設(shè)置絕對定位煮甥,就可以隨處飛盗温,甚至飛出屏幕外。
    image-20200211233903679
  5. 那么來吧成肘,理解了就往下寫

    1. ele.style.position = 'absolute';
      ele.style.left = '0px';
      
    2. 第一卖局,設(shè)置絕對定位就可以隨便飛absolute(絕對的意思)。第二双霍,設(shè)置一個它開始的left位置為墻壁靠邊邊(道理類似與有始有終)

  6. 整理一下砚偶,現(xiàn)在咱們的代碼是這樣的(//是注釋批销,不影響程序運行,僅僅讓人能看懂代碼

    <style>
        // 獲取盒子
        var ele = document.getElementById('lun_bo_tu_he_zi');
        // 讓它飛
        ele.style.position = 'absolute';
        // 設(shè)置從哪飛
        ele.style.left = '0px';
        // 每隔一秒做什么事
        setInterval(function () {
            // 設(shè)置它有多靠左 = 現(xiàn)在有多左 - 200 拼接'px'
         ele.style.left = ele.offsetLeft - 200   'px';
        },1000)
    </style> 
    

好了染坯,接下來可以看效果了,記得保存文件和刷新瀏覽器

倒數(shù)第二效果

修修補(bǔ)補(bǔ)

哎喲哎喲均芽,剛才發(fā)現(xiàn)圖怎么移動就都沒了?

究其原因就是我們沒有控制他什么時候回到初始繼續(xù)滾動


在這里插入圖片描述

接下來問題來了单鹿,那么第三步應(yīng)該干嘛骡技? 還向左繼續(xù)移動嗎?那不就啥也沒有了P叻础!因此我們需要讓他回到起點囤萤,即:設(shè)置left = 0px; 還繼續(xù)后續(xù)的移動昼窗,我們將代碼修改成如下:

setInterval(function () {
    // 如果滿足()里面的條件就執(zhí)行后續(xù),否則執(zhí)行else
    if (ele.offsetLeft <= -400) {
        // 設(shè)置它有多靠左 = '0px'
        ele.style.left ='0px';
    } else {
        // 設(shè)置它有多靠左 = 現(xiàn)在有多左 - 200 拼接'px'
         ele.style.left = ele.offsetLeft - 200   'px';
    }
},1000)

現(xiàn)在再好了涛舍,接下來就是美化的事了:

  1. 3個圖片同時出現(xiàn)不好看澄惊,我們需要出現(xiàn)一個,則需要把隨著盒子不斷向左 移動而超出<div id="yong_hu_kan">盒子的內(nèi)容隱藏掉富雅。我們用css給它設(shè)置3個樣式

    1. #yong_hu_kan {
            overflow: hidden;
              position: relative;
      }
      
    2. 第一個屬性是超出部分隱藏掸驱,第二個屬性是由于我們之前設(shè)置絕對定位是起飛,因此讓頁面不在知道盒子之間的包含關(guān)系了没佑,因此我們這里聲明一下毕贼,也就是#yong_hu_kan和#lun_bo_tu_he_zi的關(guān)系

  2. 再來加個慢慢過渡的效果

    1. 針對那個元素? 回答:#lun_bo_tu_he_zi

    2. 哪一個屬性的改變需要過渡蛤奢? 回答:left

    3. 過渡時間放緩鬼癣,需要幾秒完成? 回答:1s

    4. #lun_bo_tu_he_zi {
          transition:left 1s;
      }
      

搞定啤贩!看效果

倒數(shù)第1效果

寫在最后

哎喲待秃,累死了,因為有些知識存在盲區(qū)痹屹,所以講解的時候幾乎都是左顧右盼來講解的章郁,最后希望大家都能通過這個案例對于前端有一定的興趣,我是武漢人志衍,希望大家能借著這次疫情明白暖庄,荒年餓不死手藝人的道理,也希望大家可以多學(xué)習(xí)足画,少追星雄驹。。淹辞。另外:有需要源碼或者做到一半不會做的同學(xué)可以想辦法聯(lián)系我医舆,因為不能發(fā)第三方的聯(lián)系方式俘侠,所以一般都是關(guān)注 私信之類的來聯(lián)系了

圖片

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市蔬将,隨后出現(xiàn)的幾起案子爷速,更是在濱河造成了極大的恐慌,老刑警劉巖霞怀,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件惫东,死亡現(xiàn)場離奇詭異,居然都是意外死亡毙石,警方通過查閱死者的電腦和手機(jī)廉沮,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來徐矩,“玉大人滞时,你說我怎么就攤上這事÷说疲” “怎么了坪稽?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長鳞骤。 經(jīng)常有香客問我窒百,道長,這世上最難降的妖魔是什么豫尽? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任篙梢,我火速辦了婚禮,結(jié)果婚禮上美旧,老公的妹妹穿的比我還像新娘庭猩。我一直安慰自己,他們只是感情好陈症,可當(dāng)我...
    茶點故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布蔼水。 她就那樣靜靜地躺著,像睡著了一般录肯。 火紅的嫁衣襯著肌膚如雪趴腋。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天论咏,我揣著相機(jī)與錄音优炬,去河邊找鬼。 笑死厅贪,一個胖子當(dāng)著我的面吹牛蠢护,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播养涮,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼葵硕,長吁一口氣:“原來是場噩夢啊……” “哼眉抬!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起懈凹,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤蜀变,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后介评,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體库北,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年们陆,在試婚紗的時候發(fā)現(xiàn)自己被綠了寒瓦。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,690評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡坪仇,死狀恐怖孵构,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情烟很,我是刑警寧澤,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布蜡镶,位于F島的核電站雾袱,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏官还。R本人自食惡果不足惜芹橡,卻給世界環(huán)境...
    茶點故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望望伦。 院中可真熱鬧林说,春花似錦、人聲如沸屯伞。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽劣摇。三九已至珠移,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間末融,已是汗流浹背钧惧。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留勾习,地道東北人浓瞪。 一個月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像巧婶,于是被迫代替她去往敵國和親乾颁。 傳聞我的和親對象是個殘疾皇子涂乌,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,577評論 2 353

推薦閱讀更多精彩內(nèi)容

  • 我們首先要明白,我們給頁面添加效果用到的js到底是什么钮孵?js其實包含三部分:dom 文檔對象模型 bom 瀏覽...
    一直以來都很好閱讀 800評論 0 0
  • 原理 圖片輪播原理:將一系列大小相等的圖片平鋪骂倘,利用css布局只顯示一張圖片,其他圖片隱藏巴席,通過計算偏移量利用定時...
    黎貝卡beka閱讀 2,255評論 1 2
  • var utils = (function () {var frg = 'getComputedStyle' in...
    高冷潛質(zhì)再發(fā)光閱讀 380評論 0 0
  • 若有緣历涝,千山萬水,阻擋不了漾唉,你我相遇荧库; 若無緣,隔岸相坐赵刑,也是枉然分衫,彼此陌生。 紅塵滾滾般此,只是過客蚪战;江湖悠悠,隨波...
    清晨小鹿333閱讀 2,030評論 27 49
  • 時間都去那了铐懊,還沒好好看看你眼睛就花了邀桑,時間從我們的手指間悄悄滑走,可我們卻從來都不去在意他科乎, 小時候自己過得很開...
    浮光淺夏_7925閱讀 109評論 0 0