IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> 在Vue中使用iscroll(详细步骤) -> 正文阅读

[JavaScript知识库]在Vue中使用iscroll(详细步骤)

1.下载iscroll

下载地址:iscroll-probe.js

2.封装组件

在vue里面使用iscroll需要封装一个iscroll滚动组价

  1. 创建ScollView.vue
    目录结构如下图:
    在这里插入图片描述

  2. 导入iscroll
    在这里插入图片描述

  3. <template>结构采用iscroll官网推荐的的三层解构

<template>
    <!-- ref用以获取wrapper的dom元素 -->
    <div id="wrapper" ref='wrapper'>
        <!-- 由于内部的内容不确定,所以放一个插槽在这,谁要使用iscroll再添加进来 -->
        <slot></slot>
    </div>
</template>

4.由于生命周期方法mounted是可以最快拿到页面渲染的元素的方法,所以在 ScrollView组件的mounted()里面进行注册

 mounted(){
        this.iscroll = new IScroll(this.$refs.wrapper,{
            mouseWheel: true,
            scrollbars: true,
            // 解决拖拽卡顿问题
             scrollX: false,
             scrollY: true,
             disablePointer: true,
             disableTouch: false,
             disableMouse: true
        })
//由于我项目的内容是从网络上加载的资源,所以需要即使刷新更新iscroll,可以通过MutationObserver来监听页面节点变化(感兴趣的可以搜索MutationObserver)
        // 创建一个观察者的对象
        /*
            MutationObserver只要监听到指定内容发生变化,就会执行回调函数
            mutationList:发生变化的数组
            observer:观察者的对象
        */
        var observer = new MutationObserver((mutationList, observer)=>{
            this.iscroll.refresh()
        })
        // 2.告诉观察者对象观察什么内容
        const config = {
            childList: true, // 观察目标子节点的变化,添加或者删除
            subtree: true, // 默认为 false,设置为 true 可以观察后代节点
            attributeFilter: ['height', 'offsetHeight'] // 观察特定属性
        }
        // 3.告诉观察者对象需要观察谁,观察什么内容
        /**
         * 参数1:告诉观察者对象需要观察谁
         * 参数2:告诉观察者对象观察什么内容
         */
        observer.observe(this.$refs.wrapper, config)
    }
  1. 回到需要使用iscroll的界面,我这里是recommend.vue
  • 导入ScrollView组件
    在这里插入图片描述

  • 注册ScrollView组件
    在这里插入图片描述

  • 使用ScrollView组件在这里插入图片描述

3.关掉系统默认滚动设置,防止和iscroll冲突

在这里插入图片描述

4.iscroll配置

由于iscroll可滚动的条件是:需要滚动的区域高度<页面内容高度
所以我们需要设置ScrollView组件的父元素recommend.vue的位置固定,并设置ScrollView组件的height为100%
在这里插入图片描述
在这里插入图片描述

ok,可以滚动啦!

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-10-29 12:54:58  更:2021-10-29 12:57:17 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/10 20:17:55-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码