国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

vue使用better-scroll實現橫向滾動的方法實例

瀏覽:17日期:2022-09-29 09:16:36
一、滾動的實現原理

better-scroll的滾動原理和瀏覽器原生滾動原理是一樣的,當子盒子的高度大于父盒子的高度,就會出現縱向滾動;同理,如果子盒子的寬度大于父盒子的寬度,那么就會出現橫向滾動。

二、better-scroll的 html 結構

先來看一下 better-scroll 常見的 html 結構:

<div class='wrapper'> <ul class='content'> <li>...</li> <li>...</li> ... </ul></div>

BetterScroll應用于外部wrapper容器,并且滾動部分是content。請注意,wrapper默認情況下,BetterScroll處理容器()的第一個子元素(內容)的滾動,這意味著其他元素將被忽略。

三、在Vue中使用better-scroll

npm install better-scroll --save //npm 安裝import BScroll from ’better-scroll’ //組件文件中引入better-scroll

<template> /* 橫向滾動 */ /* 這里是父盒子*/<div ref='wrapper'v-else > /* 這里是子盒子,即滾動區域*/<div ref='wrapperChild'> <div v-for='(item, index) in currentImgList' :key='index' > <img :src='http://www.cgvv.com.cn/bcjs/item.img' /> </div></div> </div></template><script> import BScroll from 'better-scroll'; export default { data() { return { currentImgList: [{ img: require('../../assets/image/zzb_1.png') },{ img: require('../../assets/image/zzb_2.png') },{ img: require('../../assets/image/zzb_3.png') } ], }; }, mounted() { this.slide_x(); //橫向滾動 }, methods: { // 初始化 _initScroll() { if (!this.scroll) {this.scroll = new BScroll(this.$refs.wrapper, { // 實例化BScroll接受兩個參數,第一個為父盒子的dom節點 startX: 0, /// 配置的詳細信息請參考better-scroll的官方文檔,這里不再贅述 click: true, scrollX: true, scrollY: false, // 忽略豎直方向的滾動 eventPassthrough: 'vertical', useTransition: false // 防止快速滑動觸發的異常回彈}); } else {this.scroll.refresh(); //如果dom結構發生改變調用該方法重新計算來確保滾動效果的正常 } }, // 計算寬度 _calculateWidth() { // 獲取類名為 imgItem 的標簽 let rampageList = this.$refs.wrapperChild.getElementsByClassName('imgItem' ); // 設置一個起始寬度 let initWidth = 0; // 遍歷標簽 for (let i = 0; i < rampageList.length; i++) {const item = rampageList[i];// 將每一個標簽寬度相加initWidth += item.clientWidth; } // 設置可滾動的寬度 this.$refs.wrapperChild.style.width = `${initWidth}px`; }, slide_x() { this.$nextTick(() => { //this.$nextTick 是一個異步函數,為了確保 DOM 已經渲染完畢this._initScroll(); // 初始化this._calculateWidth(); // 計算寬度 }); }, }, };</script>

下面是插件原作者說的:

vue使用better-scroll實現橫向滾動的方法實例

四. 容易出現問題的點: 必須等到頁面DOM渲染完成再去執行BScroll的實例化,建議在mounted 鉤子函數里執行 子盒子的寬度大于父盒子的寬度 最后

better-scroll插件作者的文章,發現better-scroll真強大啊!

當 better-scroll 遇見 Vue

在Vue中用better-scroll實現橫向滾動

到此這篇關于vue使用better-scroll實現橫向滾動的文章就介紹到這了,更多相關vue better-scroll實現橫向滾動內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Vue
相關文章:
主站蜘蛛池模板: 国产精品久久国产三级国不卡顿 | 亚洲欧美日韩综合二区三区 | 国产超薄肉色丝袜足j | 亚洲黄a| 国产亚洲欧洲精品 | 亚洲欧美在线综合一区二区三区 | 亚洲一区二区三区在线播放 | 欧洲亚洲综合一区二区三区 | 国产91综合 | 日韩欧美一区二区三区免费看 | 国产激情视频在线播放 | 免费看男女做好爽好硬视频 | 波多野结衣一区在线观看 | 久草社区视频 | 国产中文字幕在线观看 | 午夜免费片在线观看不卡 | 国产精品国产亚洲精品看不卡 | 国产欧美日韩综合精品无毒 | 成人在线免费观看网站 | 欧美一区二区在线播放 | 狠狠色综合久久丁香婷婷 | 国产人成午夜免费噼啪视频 | 亚洲美女性生活视频 | 亚洲欧美精品国产一区色综合 | avtt天堂网 手机资源 | 精品99视频 | 久久亚洲精品国产精品777777 | 波多野结衣中文在线播放 | 手机看片国产在线 | a级毛片免费全部播放 | 欧美日韩视频免费播放 | 国产精品久久毛片 | 国产欧美一区二区三区免费 | 久久性生大片免费观看性 | 日韩欧美在线视频观看 | 毛片高清 | 免费毛片全部不收费的 | 亚洲欧美日韩精品高清 | 亚洲综合视频 | 免费观看欧美一级片 | 久久爰www免费人成 久久曰视频 |