av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

javascript - 請教一個關(guān)于頁面視差效果的實現(xiàn)

瀏覽:135日期:2023-06-21 10:28:39

問題描述

頁面效果:

驚蟄

關(guān)于這個效果的模仿:

我起初是在知乎獲知了一個叫 skrollr.js 的庫,并且學(xué)習(xí)并應(yīng)用到自己的頁面,由于我的頁面不像上面的是靜態(tài)節(jié)點,文章和圖片都是請求得到,并且是分步請求依賴于 img 的 onload 事件來渲染一套(文章+背景圖)的模板,并 append 到頁面中。剛開始的實現(xiàn)是把背景圖全部用 fixed 定位層疊到屏幕,利用 skrollr 的根據(jù)參照物做出 css 屬性狀態(tài)變化來達(dá)到效果。但實際上哪怕不寫效果,只要一個 skrollr.js 的初始化函數(shù),在安卓機(jī)上就卡得不行。 skrollr.js 作者也有指出,如下圖:

javascript - 請教一個關(guān)于頁面視差效果的實現(xiàn)

后來又仔細(xì)觀察了下樓上驚蟄頁面的效果,發(fā)現(xiàn):

容器內(nèi)的每個父塊都是 absolute 定位,并且都是 left:0 top: 0 right: 0 bottom: 0

容器采用了類似kinetic庫利用 touch 事件使用 translate 模擬滾動。。。 效果 demo: demo

疑問:

他是如何達(dá)到視差效果,雖然看到有 z-index 屬性

他的 translate 基本上是移除一屏的高度,然后后面的頁面就上來了。。。 這種如何做到了,求具體解釋

問題解答

回答1:

全部絕對定位,右邊的滾動條是模擬的。在同樣的z-index高度下,后面的元素會自動的覆蓋前面的元素。

所以只要把根據(jù)滾動狀態(tài)來把后面的translate改變就行了,你可以理解成一個卡片覆蓋另一個卡片。

簡單來說,最開始滾動時把第二屏的元素往上移動,知道超過一屏則開始第二屏,以此類推。

后面就是一些背景圖放大縮小之類的效果了。

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 欧美日韩a | 亚洲国产一区二区三区在线观看 | 国产清纯白嫩初高生视频在线观看 | 国产精品免费一区二区三区 | 91精品国产综合久久久动漫日韩 | 国产高清免费视频 | 国内精品视频免费观看 | 亚洲欧美在线免费观看 | 中文字幕欧美日韩一区 | 91成人在线 | 日韩视频高清 | 成人三级av | 色婷婷av一区二区三区软件 | 欧美成人自拍 | 国产免费一区二区 | 成人亚洲性情网站www在线观看 | 污污免费网站 | 久久日韩粉嫩一区二区三区 | 91精品国产乱码久久久久久久 | 日韩第一区 | 91国内精精品久久久久久婷婷 | 久久精品国产一区 | 欧美一级在线免费观看 | 日韩一区二区福利 | 成人三级网址 | 精品视频在线免费观看 | 一级毛片在线视频 | 久热久草| 久久国产精品一区二区三区 | 天啪| 成人一区在线观看 | 毛片区| 99精品视频在线 | 日韩一区二区av | 中文字幕乱码一区二区三区 | 免费观看www | 精品一区二区在线观看 | 欧美中文字幕在线观看 | 久久久亚洲一区 | 99视频久 | 91中文字幕在线观看 |