国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

來做一個(gè)簡(jiǎn)單的蔚來汽車官網(wǎng)首頁(yè)

TZLLOG / 1160人閱讀

摘要:首先來看看蔚來官網(wǎng)長(zhǎng)什么樣子不會(huì)做動(dòng)圖,所以具體效果可以去蔚來官網(wǎng)看根據(jù)效果,我們來分析一下頁(yè)面加載進(jìn)去后會(huì)有黑色的背景,然后慢慢地圖片和文字動(dòng)畫加載出來說明背景圖不是在父親節(jié)點(diǎn)加背景圖片,否則不會(huì)有黑色背景和圖片的動(dòng)畫那么就需要一個(gè)多帶帶的

首先來看看蔚來官網(wǎng)長(zhǎng)什么樣子

不會(huì)做動(dòng)圖,所以具體效果可以去蔚來官網(wǎng)看

HTML

根據(jù)效果,我們來分析一下

頁(yè)面加載進(jìn)去后會(huì)有黑色的背景,然后慢慢地圖片和文字動(dòng)畫加載出來說明背景圖不是在父親節(jié)點(diǎn)加背景圖片,否則不會(huì)有黑色背景和圖片的動(dòng)畫那么就需要一個(gè)多帶帶的子盒子來做背景切換動(dòng)畫,中間居中的內(nèi)容也需要盒子來包,可以得出的HTML結(jié)構(gòu)是

.container>.items>.item>(.context>inner-box)+(.pic>img.bgp)

好了背景的盒子分析完了,再來觀察一下內(nèi)容
F12 發(fā)現(xiàn)是一張logo,
,是一個(gè)p標(biāo)簽,這里可以觀察到,p標(biāo)簽的長(zhǎng)度和logo的長(zhǎng)度一樣大,如果用letter-spacing,把他撐開很明顯不太理智,所以這里選擇用text-align-last justify這個(gè)樣式,那么就需要img和p標(biāo)簽都包在一個(gè)盒子里
,是兩個(gè)a標(biāo)簽。都需要居中對(duì)其,而且兩個(gè)a標(biāo)簽中間留有空白,可以考慮使用彈性布局,那么可以得出的HTML結(jié)構(gòu)是:

.container>.items>.item>(.context>inner-box>(.wl-logo>img+p)+(.btn-box>a*2))+(.pic>img.bgp)

好了,HTML已經(jīng)定義好了

CSS

css我就不細(xì)講了,就把幾個(gè)難的點(diǎn)說出來,并貼出部分css樣式

前面的大盒子,寬度全部定義為100%

.context 盒子的居中

.context
    position absolute
    text-align center
    top 26%
    left 50%
    transform translate(-50%, -50%)

p標(biāo)簽的拉伸

p
    -moz-text-align-last justify
    text-align-last justify

a標(biāo)簽的彈性布局
父盒子:

.btn-box
    display flex
    justify-content space-between

為了a標(biāo)簽盡可能美觀一些,a:

a
    border 2px solid #fff
    text-align center
    width 45%
    height 46px
    line-height 46px
    border-radius 23px
    font-weight 700
    font-size 16px
    letter-spacing 2px

背景圖動(dòng)畫加載時(shí)的黑色

.pic
    width 100%
    background-color #000

JS

終于到了萬眾期待的JS部分了,這里引用了jquery的庫(kù),來簡(jiǎn)化我們操作

可以觀察到蔚來官網(wǎng),滾輪越往下滾,就會(huì)有一個(gè)從無到有的動(dòng)畫展現(xiàn)出來,那么很明顯這里需要一個(gè)監(jiān)聽滾輪事件

$(document).scroll();

有了滾輪監(jiān)聽事件,還需要對(duì)有動(dòng)畫的元素進(jìn)行操作,對(duì)每個(gè)有動(dòng)畫的元素加上class

 //logo

全國(guó)試駕開啟

//p 報(bào)名試駕 //a 探索ES6 //a //背景圖

先定義幾個(gè)全局變量

const winHeight = $(window).height(), // 瀏覽器可視的高度
      clsarr    = []; //所有需要操作的元素
var   tp = $(document).scrollTop() || 0;//滾輪下滑的大小

那么先把所有需要操作的元素放在clsarr里,由于find()得到的結(jié)果是一個(gè)數(shù)組,為了防止后面操作麻煩,把他拆開來放進(jìn)clsarr,避免clsarr成為一個(gè)二維數(shù)組

[].forEach.call($(".item"),item => {
    pusharr(clsarr,$(item).find(".p"))
    pusharr(clsarr,$(item).find(".bat"))
    pusharr(clsarr,$(item).find(".bgp"))

    function pusharr(arr1,arr2){
        if(arr2.length <= 1){
            arr1.push($(arr2[0]))
        }else{
            [].forEach.call(arr2,item=>{
                arr1.push($(item))
            })
        }
    }
})

現(xiàn)在基本數(shù)據(jù)已經(jīng)處理完畢了,開始頁(yè)面動(dòng)畫的初始化,要讓所有元素隱藏,首先定義一個(gè)css樣式:

.hid
    opacity 0

然后讓每個(gè)元素添加上這個(gè)class

clsarr.forEach(item=>{
    item.addClass("hid")
})

現(xiàn)在要開始最關(guān)鍵的判定方法了,判斷一個(gè)元素是否出現(xiàn)在可視區(qū)域內(nèi),來讓我們看一個(gè)圖:

元素需要全部在可視區(qū)域,才應(yīng)該顯示出來,背景只需要出現(xiàn),不需要全部在可視區(qū)域就應(yīng)該顯示出來
如果一個(gè)元素全部展示在可視區(qū)域中,應(yīng)該滿足同時(shí)滿足

滾輪滾動(dòng)的長(zhǎng)度+頁(yè)面可視的高度 > 元素的高度+元素到頁(yè)面頂端的長(zhǎng)度

元素的高度+元素到頁(yè)面頂端的長(zhǎng)度度 > 滾輪滾動(dòng)的長(zhǎng)度

如果一個(gè)背景部分展示在可視區(qū)域中,應(yīng)該滿足同時(shí)滿足

滾輪滾動(dòng)的長(zhǎng)度+頁(yè)面可視的高度 > 背景到頁(yè)面頂端的長(zhǎng)度

背景到頁(yè)面頂端的長(zhǎng)度 + 背景的高度 > 滾輪滾動(dòng)的長(zhǎng)度

那么響應(yīng)的js代碼


function md(num){
    return Math.round(num)
}

function isrender(tp,wh,ot,oh){ //元素判定方法 tp滾輪滾動(dòng)的長(zhǎng)度,wh頁(yè)面可視的高度,ot元素的高度,oh元素到頁(yè)面頂端的長(zhǎng)度
    if(((md(tp) + md(wh) - 20) > (md(ot) + md(oh))) && ((md(ot) + md(oh)) > md(tp))){
        return true
    }
    return false
}

function isbgprender(tp,wh,ot,oh){ //背景判定方法 tp滾輪滾動(dòng)的長(zhǎng)度,wh頁(yè)面可視的高度,ot背景的高度,oh背景到頁(yè)面頂端的長(zhǎng)度
    if(((md(tp) + md(wh)) > md(ot)) && (md(ot) + md(oh) > (md(tp)))){
        return true
    }
    return false
}

好了,終于到最后一步了了,先把動(dòng)畫定義一下

.anm //元素動(dòng)畫
    opacity 1
    animation pulse 1s linear 1

.show //圖片動(dòng)畫
    transition all 2s ease .2s
    opacity 1

@keyframes pulse {
    0%,50%{
        opacity: 0;
        transform: translate(0, 100%);
    }
    100% {
        opacity: 1;
        transform: translate(0, 0);
    }
}

然后把動(dòng)畫渲染到頁(yè)面上去,流程圖:

代碼:

function render(tp,wh){
    clsarr.forEach(ele=>{
        if(ele.hasClass("bgp")){
            if(ele.hasClass("logo")){
                if(isrender(tp,wh,ele.offset().top,ele.height())){
                    ele.addClass("show")
                } 
            }else{
                if(isbgprender(tp,wh,ele.offset().top,ele.height())){
                    ele.addClass("show")
                }
            }
        }else{
            if(isrender(tp,wh,ele.offset().top,ele.height())){
                ele.addClass("anm")
            } 
        }
    })
}

最后只需要在監(jiān)聽事件和外部調(diào)用這個(gè)方法就行啦:

render(tp,winHeight);

$(document).scroll(()=>{
    tp = $(document).scrollTop()
    render(tp,winHeight)
});

好了,總算完成了,附上網(wǎng)頁(yè)鏈接 https://cysgg.github.io/weila...,源碼:
https://github.com/cysgg/weil...

end

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/114990.html

相關(guān)文章

  • 來做一個(gè)簡(jiǎn)單蔚來汽車官網(wǎng)首頁(yè)

    摘要:首先來看看蔚來官網(wǎng)長(zhǎng)什么樣子不會(huì)做動(dòng)圖,所以具體效果可以去蔚來官網(wǎng)看根據(jù)效果,我們來分析一下頁(yè)面加載進(jìn)去后會(huì)有黑色的背景,然后慢慢地圖片和文字動(dòng)畫加載出來說明背景圖不是在父親節(jié)點(diǎn)加背景圖片,否則不會(huì)有黑色背景和圖片的動(dòng)畫那么就需要一個(gè)單獨(dú)的 首先來看看蔚來官網(wǎng)長(zhǎng)什么樣子 showImg(https://segmentfault.com/img/bVbvgqY?w=1904&h=935)...

    shleyZ 評(píng)論0 收藏0
  • 來做一個(gè)簡(jiǎn)單蔚來汽車官網(wǎng)首頁(yè)

    摘要:首先來看看蔚來官網(wǎng)長(zhǎng)什么樣子不會(huì)做動(dòng)圖,所以具體效果可以去蔚來官網(wǎng)看根據(jù)效果,我們來分析一下頁(yè)面加載進(jìn)去后會(huì)有黑色的背景,然后慢慢地圖片和文字動(dòng)畫加載出來說明背景圖不是在父親節(jié)點(diǎn)加背景圖片,否則不會(huì)有黑色背景和圖片的動(dòng)畫那么就需要一個(gè)單獨(dú)的 首先來看看蔚來官網(wǎng)長(zhǎng)什么樣子 showImg(https://segmentfault.com/img/bVbvgqY?w=1904&h=935)...

    TNFE 評(píng)論0 收藏0
  • 當(dāng)智能汽車變成一個(gè)超級(jí)計(jì)算機(jī),傳統(tǒng)車廠還有機(jī)會(huì)嗎?

    摘要:由于汽車對(duì)安全性可靠性實(shí)時(shí)性,和傳感器帶寬算力的高要求,及其復(fù)雜的軟件供應(yīng)鏈生態(tài),智能汽車會(huì)催生下一代計(jì)算操作系統(tǒng)。軟件生態(tài)與容器放眼智能汽車的生態(tài)圈,今天的座艙與兩個(gè)域計(jì)算機(jī)都是以整體解決方案的方式售賣給整車廠。 ?【CSDN 編者按】智能汽車正在被軟件定義,而以軟件為中心的新架構(gòu)也...

    不知名網(wǎng)友 評(píng)論0 收藏0
  • 騰訊云+未來峰會(huì)定檔5月,云計(jì)算已成騰訊技術(shù)的重要出口

    摘要:近日,來自騰訊云官網(wǎng)的消息顯示,騰訊云未來峰會(huì)將于月日正式開幕。馬化騰再站臺(tái),騰訊云是智能時(shí)代突破口目前,騰訊云已成為騰訊先進(jìn)技術(shù)的重要出口,更是騰訊占據(jù)智能時(shí)代重要的突破口。騰訊云未來峰會(huì),騰訊云將如何布局將會(huì)有什么產(chǎn)品,不妨拭目以待。近日,來自騰訊云官網(wǎng)的消息顯示,2018騰訊云+未來峰會(huì)將于5月23日正式開幕。本屆云+未來峰會(huì)以煥啟為主題,將邀請(qǐng)8000余名行業(yè)及技術(shù)嘉賓,共同參與并探...

    wizChen 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<