一级片大奶子_色又黄又爽18禁免费视频_热久久久久久久_久久久精品一区二区_日韩av不卡在线播放_精品国内自产拍在线观看视频

商城系統 注冊

精確計算微信小程序scrollview高度,全機型適配

2020-09-27|HiShop
導讀:眾所周知,可以滑動的 scroll 組件在移動端非常的重要,幾乎每個頁面都要用到。 而 小程序 的 scroll-view 組件就比較坑了,非得指定一個高度才能正常使用。布局復雜的時候誰還給你算...

眾所周知,可以滑動的 scroll 組件在移動端非常的重要,幾乎每個頁面都要用到。

而小程序的 scroll-view 組件就比較坑了,非得指定一個高度才能正常使用。布局復雜的時候誰還給你算高度啊。。。

精確計算微信小程序scrollview高度,全機型適配

一、布局分析,推導公式

先給個示例圖:

精確計算微信小程序scrollview高度,全機型適配

這是一個稍微復雜點的頁面,最上面是兩個 tab 標簽,每個標簽的頁面是一個子組件。第二個子組件布局是上面一個標題,下面是 scroll-view 。

 

頁面分三部分,tab,title,scroll-view。不要忘了每個部分間還有 margin , 這里設置的是每個 margin 都是 10px 。

所以要計算 scroll-view 的高度可以得出下面 公式 :

scroll-view 的高度 = 頁面可用高度 - tab高度 - title高度 - 10 - 10
復制代碼

為什么減兩個 10 呢?上面說了 10 是 margin 的距離, tab 與 title 有 10px 的 margin, title 與 scroll-view 也有 10px 的 margin 。

需要注意的是計算用的單位都是 px ,不是小程序的 rpx 。因為下面調用接口獲取可用屏幕高度時得到的就是 px 。

二、計算變量的高度

2.1 計算單個節點高度

上面的公式中的變量有:頁面可用高度, title 的高度, tab 的高度。

這里需要計算的就是 頁面可用高度 和 title 的高度,因為為了簡單 tab 的高度是寫死的 50px , 當然不寫死也沒關系,在父組件中計算 tab 的高度傳給子組件就好。

下面正式開始計算

//計算 scroll-view 的高度
computeScrollViewHeight() {
  let that = this
  let query = wx.createSelectorQuery().in(this)
  query.select('.title').boundingClientRect(function(res) {
    //得到標題的高度
    let titleHeight = res.height
    //scroll-view的高度 = 屏幕高度- tab高(50) - 10 - 10 - titleHeight
    //獲取屏幕可用高度
    let screenHeight = wx.getSystemInfoSync().windowHeight
    //計算 scroll-view 的高度
    let scrollHeight = screenHeight - titleHeight - 70
    that.setData({
      scrollHeight: scrollHeight
    })
  }).exec()
},
復制代碼

這里主要是通過小程序封裝的 API 來計算的。

wx.getSystemInfoSync() 可以得到設備的各種信息,關于高度的參數有兩個,一個是屏幕高度 screenHeight ,一個是可使用窗口高度 windowHeight 。注意計算的時候要用 windowHeight ,這樣算出來的高度才是對的。 screenHeight 是手機的屏幕高度,包含了手機的狀態欄和小程序標題欄。

有了可用屏幕高度,還需要元素的高度。計算元素高度小程序也提供了 API,參見WXML節點信息API。

具體用法看文檔就好了,精簡的使用步驟就是:

let query = wx.createSelectorQuery().in(this)
query.select('.title').boundingClientRect(function(res) {
    //在這里做計算,res里有需要的數據
}).exec()
復制代碼

注意在組件 component 里使用的話,要用 wx.createSelectorQuery().in(this) ,將選擇器的選取范圍更改為自定義組件component內。(初始時,選擇器僅選取頁面范圍的節點,不會選取任何自定義組件中的節點。)

如果想同時測量多個節點的高度呢?

2.2 計算多個節點高度

能計算單個當然也能同時計算多個。如下:

computeScrollViewHeight() {
  let that = this
  let query = wx.createSelectorQuery().in(this)
  query.select('.search').boundingClientRect()
  query.select('.title-wrapper').boundingClientRect()
  query.exec(res => {
    let searchHeight = res[0].height
    let titleHeight = res[1].height
    let windowHeight = wx.getSystemInfoSync().windowHeight
    let scrollHeight = windowHeight - searchHeight - titleHeight - 30 - 5 - 50 
    this.setData({ scrollHeight: scrollHeight})
  })
},
復制代碼

有幾個節點就寫幾個 query.select('.search').boundingClientRect() , 然后調用 query.exec() 執行操作獲取節點信息的數組。

注意:調用封裝好的 computeScrollViewHeight() 的時機是在生命周期函數的 ready() 中,不能在 created() ,否則取不到數據。

參見Component構造器

精確計算微信小程序scrollview高度,全機型適配

三、在 wxml 使用計算的結果

計算完成后如何使用呢?

<scroll-view scroll-y style='height: {{scrollHeight + "px"}}'></<scroll-view>
復制代碼

通過上面的方法使用。

注意:一定要在變量后面加上單位 px ,不加的話會出錯。

精確計算微信小程序scrollview高度,全機型適配

以上就是精確計算微信小程序scrollview高度的方法,從此再也不擔心 scroll-view 高度錯亂了!

HiShop小程序工具提供多類型商城/門店小程序制作,可視化編輯 1秒生成5步上線。通過拖拽、拼接模塊布局小程序商城頁面,所看即所得,只需要美工就能做出精美商城。更多小程序商店請查看:小程序商店

電話咨詢 預約演示 0元開店
主站蜘蛛池模板: 精品国产96亚洲一区二区三区|水蜜桃综合久久无码欧美|国产精品久久久久久久第一福利|成人无码免费视频在线观看网址|伊人wwwyiren22cn|极品尤物被啪到呻吟喷水 | 色综合区|日本免费三片免费观看东热|99re免费精品视频|97在线观看免费观看|超碰超在线|色36cccwww在线播放 | 久久久久高潮毛片免费全部播放|精品国产一区二区三区久久狼黑人|7878视频在线观看|国产日韩精品视频一区二区三区|#NAME?|91p九色成人 | 久久毛片免费看一区二区三区|国产毛多水多高潮高清|一级黄色毛片|久久久久久久网|国产精品美女久久久久=av爽李琼|天天摸天天摸色综合舒服网 | 国产一区二区女内射|热久久视久久精品2020|91精品国产入口|久久综合精品视频|亚洲=aV超清无码不卡在线观看|在线观看国产精品日韩=av | 五月天婷婷色综合|91热国产|亚洲欧洲二区|日日插日日操|成人免费毛片高清视频|www.日韩在线观看 | 极品少妇x88|国产免费看福利|亚洲欧美国产另类首页|69xx免费播放|亚洲=aV无码天堂一区二区三区|国产真实乱在线更新 | 久草在线|粉嫩=av一区二区在线播放免费|丁香五月天综合缴情网|激情五月俺也去狠狠爱|天天做夜夜爱|欧美专区亚洲 | 99精品久久久久久久免费看蜜月|伊人久久大香线蕉无码不卡|免费观看的黄色片|99久热re在线精品996热视频|在线=a免费观看|337P日本大胆欧美裸体艺术 | 91大片淫黄大片在线天堂|国内国产精品久久|91cc.live最新国产|成人=aⅴ视频|v=a在线|国产成人免费视 | www.亚洲天堂|精品久久精品|久久国产精品一区二区三区|欧美猛少妇色XXXXX猛交|亚洲国产精品成人综合久久久|四虎免费精品 | 国产成人=av在线播放|亚洲网免费|凸凹视频在线|免费网站h|一区二区三区在线播放|麻豆网视频免费观看 | 亚洲日本乱码一区二区产线一∨|我要看WWW免费看插插视频|老师课后辅导乳揉搓H在线观看|视频一区二区三区波多野结衣|中文字幕在线资源|精品国产第一页 | 国产一区二区三区精品久久久|欧美午夜一区二区|久草新免费|91=av成人|男人午夜在线|亚洲欧美国产vr在线观 | 日本三不卡|17c在线观看|亚洲中文久久精品无码照片|午夜精品久久久久久久96蜜桃|四虎精品成人影院在线观看|国产卡一卡二卡三无线乱码新区 | 国产乱妇乱子在线播视频播放网站|国产免费人成在线视频|精品欧洲=av无码一区二区14|精品少妇一区二区三区在线观看|播放一区二区|国产精品久久久久久久久无码日本蜜乳 | 成午夜精品一区二区三区软件|精品亚洲第一|大地资源二在线视频观看|国产美女视频黄=a视频免费|亚洲国产成人=aV片在线播放|日本乱偷人妻中文字幕在线 | 91=av爱爱|黄频视频大全免费的国产|日本亚洲一区二区|c=aoporn超碰地址进入|黄色在线免费观看视频|精品国产乱码久久久久久芒果 | 国产极品美女高潮无套软件|亚洲精品视频区|免费精品一区二区三区在线观看|国产SM调教折磨视频|娇妻在厨房被朋友玩得呻吟|伊人成色综合人夜夜久久 | 日韩成人久久久|农村妇女精品一二区|色站在线|成人=a站|99精品一级欧美片免费播放|品色堂成人论坛 | #NAME?|欧美暖暖视频|91国内在线|毛多水多www偷窥小便|人妻无码人妻有码中文字幕|少妇人妻精品一区二区三区 | 粉嫩少妇内射浓精VIDEOS|免费nb=a在线观看|素人啪啪|俺也去久久|亚洲=av=av天堂=av在线网毛片|国产蜜月一区二区三区在线看 | 久久久女人与动物群交毛片|草莓国产视频|一区在线播放|97视频精品|久草福利在线视频|久久久久亚洲=av成人网人人软件 | 男同免费|久久久久久草莓香蕉步兵|亚洲女女女同性VIDEO|免费的=av不用播放器的|黄频网站在线观看|久久久88 | 男人视频在线观看|青青青草国产|国产成=a人亚洲精v品无码性色|91深夜|国产chinese精品露脸|日日日日做夜夜夜夜做无码 | 区美毛片|国产精品久久久久久久久软件|亚洲精品欧美一区二区三区|国产性色|国产精品家庭影院|日韩中文第一页 性生大片免费观看668|亚洲成人=av影片|毛片大全真人在线|国产老女人高潮大全|中文字幕丰满|一本久久久久 | 国产V精品无码好舒服欧美精品|一本之道亚洲|亚在线观看免费视频入口|成人学院中文字幕|国产精品成人观看视频网站|欧洲成在人线视频免费 | 台湾久久网|99久久精品免费看国产四区|亚洲一区二区三区在线视频观看|一区二区三区四区在线免费视频|红桃视频二区|国产久艹视频 | 亚洲精品久久久久一区二区|啊灬啊灬啊灬快灬高潮了视频网站|国产妇女野外牲一级毛片|两个人的房间高清在线观看|国产chinese男男G=aYG=aY视频网站|日本=aⅴ毛片成人偷拍 | 亚洲精品无码成人=a片|国产美女口爆吞精普通话|国产精品国产三级国产专播i12|91精品国产一区自在线拍|日韩特级|成人在线免费观看小视频 | 剑来高清视频在线观看|欧美一区二区日韩一区二区|亚洲欧美日韩成人高清在线一区|国模GOGO无码人体啪啪|加勒比东京热无码国产=aV|亚洲色图在线观看 | #NAME?|日韩三区在线观看|三级一区|绝顶潮喷绝叫在线观看|粉嫩欧美一区二区三区|国产成人=aV无码永久免费一线天 | 91久久青草|欧洲黄色毛片|伊人高清视频|久热综合|九久久久|视频色黄色毛片 | 国产精品国产三级欧美二区|四虎影视在线免费观看|日日躁夜夜躁狠狠躁夜夜躁|日本高清中文字幕一区二区三区=a|日韩精品在在线一区二区中文|久久精品一区二区三区黑人印度 | 亚洲精品=a级九色|99在线啪|欧美中文视频|亚洲精品国产一区二区色欲影院|精品久久久久久亚洲精品|性欧美free德国极品 | 四虎国产精品永久入口|snh48国产大片永久|成年人免费在线观看视频网站|99久久婷婷国产综合精品首页|9977精品视频免费入口|国产日韩欧美精品一区二区 | 精品国产免费久久久久久桃子图片|六月婷婷久久|黄色在线观看免费视频|丰满熟妇XXXX性PPX人交|国内自拍网址|97色干 | 18岁成人毛片|农村少妇kkkk7777|自拍偷拍国产|老妇女性较大毛片|成人在线日本|ig=ao激情视频 | 午夜无码伦费影视在线观看|在线看成人片|免费在线观看黄色=av|#NAME?|日韩=a∨精品日韩在线观看|精品人妻无码一区二区色欲产成人 | 免费无码又爽又刺激高潮的动漫|欧美日日日|亚洲=aV无码一区二区三区在线播放|国产九九=av|中文字幕无码视频专区|中文字幕一区二区三区手机版 | 国产重口扩张91|桃色视频在线播放|亚洲自拍另类欧美丝袜|成人=av在线网站|色花=av|91影视大全 |