国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

vue better-scroll插件使用詳解

2019-11-19 14:28:45
字體:
來源:轉載
供稿:網友

什么是 better-scroll

better-scroll 是一個移動端滾動的解決方案,它是基于 iscroll 的重寫,它和 iscroll 的主要區別在 這里 。better-scroll 也很強大,不僅可以做普通的滾動列表,還可以做輪播圖、picker 等等。

在需要的文件中添加

import BScorll from 'better-scroll';

引用的示例代碼:

let scroll = new BScroll(Dom對象, {//options startX: 0, startY: 0})

Vue獲得Dom對象方法,

<div v-el:food-wrapper></div>//定義對象this.$els.foodWrapper//獲取對象

(Vue 更新數據時是異步的,所以在數據未加載完全之前,Bscroll無法獲取目標內容的高度,所以會導致無法滾動的現象)

為了解決上面的問題,運用Vue的nextTick();

(簡單說,因為DOM至少會在當前tick里面的代碼全部執行完畢再更新。所以不可能做到在修改數據后并且DOM更新后再執行,要保證在DOM更新以后再執行某一塊代碼,就必須把這塊代碼放到下一次事件循環里面,比如setTimeout(fn, 0),這樣DOM更新后,就會立即執行這塊代碼。)

// DOM 還沒有更新Vue.nextTick(function () { // DOM 更新了}) 

問題:

PC頁面時,點擊不會被 better-scroll阻止事件,初始化,給 better-scroll派發事件,使移動端擁有點擊事件,因此切換到PC端時,點擊事件會被執行兩次,

方法:在點擊時,傳 $event變量,Better-scroll插件中的 event事件和原生 js的 event有屬性上得區別,Better-scroll插件派發的事件時event_constructed為true,原生點擊事件是沒有這個屬性的,

selectMenu(index,event){  if(!event._constructed){//如果不存在這個屬性,則不執行下面的函數    return;  }}

使用手冊:https://github.com/ustbhuangyi/better-scroll

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 乐至县| 电白县| 彭泽县| 德钦县| 神木县| 封丘县| 商水县| 五台县| 南雄市| 西畴县| 虹口区| 广丰县| 即墨市| 宁海县| 孙吴县| 凤山县| 孟村| 勐海县| 临武县| 东莞市| 通许县| 武平县| 尼玛县| 开封市| 巴东县| 吐鲁番市| 武宁县| 温州市| 宣武区| 沽源县| 额尔古纳市| 阿拉善盟| 济阳县| 闻喜县| 突泉县| 桑日县| 腾冲县| 同仁县| 密云县| 文山县| 滨州市|