vue 框架下自定义滚动条(easyscroll)实现方法


Posted in Javascript onAugust 29, 2019

增加一个自定义滚动条插件:

//插件采用jsx语法,使用前需要安装vue-jsx插件
npm install babel-plugin-syntax-jsx --save-dev
npm install babel-plugin-transform-vue-jsx --save-dev
npm install babel-helper-vue-jsx-merge-props --save-dev
npm install babel-preset-es2015 --save-dev
//更改.babelrc文件
{
 "presets": [
  ["es2015", { "modules": false }],
  ["env", {
   "modules": false,
   "targets": {
    "browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
   }
  }],
  "stage-2"
 ],
 "plugins": ["transform-vue-jsx", "transform-runtime"],
 "env": {
  "test": {
   "presets": ["env", "stage-2"],
   "plugins": ["istanbul"]
  }
 }
}
//安装使用插件
npm isntall --save easyscroll
//main.js中
import EasyScroll from 'easyscroll';
Vue.use(EasyScroll);
//滚动条主要参数
myBarOption:{
 barColor:"#959595",  //滚动条颜色
 barWidth:6,      //滚动条宽度
 railColor:"#eee",   //导轨颜色
 barMarginRight:0,   //垂直滚动条距离整个容器右侧距离单位(px)
 barMaginBottom:0,   //水平滚动条距离底部距离单位(px)
 barOpacityMin:0.3,   //滚动条非激活状态下的透明度
 zIndex:"auto",    //滚动条z-Index
 autohidemode:true,   //自动隐藏模式
 horizrailenabled:true,//是否显示水平滚动条
}
//页面代码
<EasyScrollbar :barOption="myBarOption">
  <div>
   <div>
    内容
   </div>
  </div>
</EasyScrollbar>
<script>
  data{
   return{
    data(){
     myBarOption:{
      barColor:"red"
     }
    }
   }
  }
</script>
//后台搭建代码参考
<template>
 <div id="app">
  <router-view class="frameTop" name="top"/>
  <router-view class="frameMenu" name="menus"/>
  <EasyScrollbar class="frameMain" :barOption="myBarOption">
   <div class="organization" :style="'height:'+scrollHeight+'px'">
    <router-view></router-view>
   </div>
  </EasyScrollbar>
 </div>
</template>

<script>
export default {
 data(){
  return {
   scrollHeight: 0,     //EasyScrollbar 的直接子元素的高度
   myBarOption: {
    barColor:"#959595",  //滚动条颜色
    barWidth:6,      //滚动条宽度
    railColor:"#eee",   //导轨颜色
    barMarginRight:0,   //垂直滚动条距离整个容器右侧距离单位(px)
    barMaginBottom:0,   //水平滚动条距离底部距离单位(px)
    barOpacityMin:0.3,   //滚动条非激活状态下的透明度
    zIndex:"auto",     //滚动条z-Index
    autohidemode:true,   //自动隐藏模式
    horizrailenabled:true,//是否显示水平滚动条
   }
  }
 },
 created: function() {
  this.init();
 },
 methods:{
  init: function() {
   //初始化时计算页面核心模块得高度,并赋值给 EasyScrollbar 的直接子元素
   this.scrollHeight = document.documentElement.clientHeight-50;
  }
 }
}

</script>

<style>
@import "./assets/css/base.css";
@import "./assets/css/frame.css";
</style>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
《JavaScript高级程序设计》阅读笔记(三) ECMAScript中的引用类型
Feb 27 Javascript
Js获取下拉框选定项的值和文本的实现代码
Feb 26 Javascript
js获取UserControl内容为拼html时提供方便
Nov 02 Javascript
javascript实现英文首字母大写
Apr 23 Javascript
javascript实现验证身份证号的有效性并提示
Apr 30 Javascript
微信小程序 数组中的push与concat的区别
Jan 05 Javascript
vue.js实现数据动态响应 Vue.set的简单应用
Jun 15 Javascript
vue 1.x 交互实现仿百度下拉列表示例
Oct 21 Javascript
详解Vue CLI 3.0脚手架如何mock数据
Nov 23 Javascript
了解javascript中变量及函数的提升
May 27 Javascript
JS实现TITLE悬停长久显示效果完整示例
Feb 11 Javascript
利用promise及参数解构封装ajax请求的方法
Mar 24 Javascript
Angular8路由守卫原理和使用方法
Aug 29 #Javascript
Vue中的循环及修改差值表达式的方法
Aug 29 #Javascript
vue父子组件通信的高级用法示例
Aug 29 #Javascript
Elementui表格组件+sortablejs实现行拖拽排序的示例代码
Aug 28 #Javascript
JS中async/await实现异步调用的方法
Aug 28 #Javascript
基于Node的Axure文件在线预览的实现代码
Aug 28 #Javascript
详解用async/await来处理异步
Aug 28 #Javascript
You might like
php基础知识:控制结构
2006/12/13 PHP
php环境配置 php5 MySQL5 apache2 phpmyadmin安装与配置图文教程
2007/03/16 PHP
php简单提示框alert封装函数
2010/08/08 PHP
基于JQuery实现鼠标点击文本框显示隐藏提示文本
2012/02/23 Javascript
Jquery post传递数组方法实现思路及代码
2013/04/28 Javascript
JS关键字球状旋转效果的实例代码
2013/11/29 Javascript
js控制href内容的连接内容的变化示例
2014/04/30 Javascript
PHP+jQuery+Ajax+Mysql如何实现发表心情功能
2015/08/06 Javascript
JavaScript实现复制或剪切内容到剪贴板功能的方法
2016/05/23 Javascript
js实现StringBuffer的简单实例
2016/09/02 Javascript
vue-router实现嵌套路由的讲解
2019/01/19 Javascript
node Buffer缓存区常见操作示例
2019/05/04 Javascript
使用Vue-cli3.0创建的项目 如何发布npm包
2019/10/10 Javascript
详解vue中v-bind:style效果的自定义指令
2020/01/21 Javascript
JS绘图Flot如何实现动态可刷新曲线图
2020/10/16 Javascript
[01:05:29]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Aster BO3 第二场 1月24日
2021/03/11 DOTA
Python操作MongoDB数据库的方法示例
2018/01/04 Python
使用tensorflow实现线性回归
2018/09/08 Python
django框架使用方法详解
2019/07/18 Python
Python (Win)readline和tab补全的安装方法
2019/08/27 Python
PyCharm 在Windows的有用快捷键详解
2020/04/07 Python
用Python实现童年贪吃蛇小游戏功能的实例代码
2020/12/07 Python
python网络爬虫实现发送短信验证码的方法
2021/02/25 Python
STAY JAPAN台湾:预订日本民宿
2018/07/22 全球购物
后勤人员自我评价怎么写
2013/09/19 职场文书
总监职责范文
2013/11/09 职场文书
幼儿园消防安全制度
2014/01/26 职场文书
幼儿园门卫制度
2014/01/29 职场文书
3.12植树节活动总结2014
2014/03/13 职场文书
教师产假请假条
2014/04/10 职场文书
土木工程求职信
2014/05/29 职场文书
2014县委书记四风对照检查材料思想汇报
2014/09/21 职场文书
志愿者服务活动总结报告
2015/05/06 职场文书
关于社会实践的心得体会(2016最新版)
2016/01/25 职场文书
vue实现无缝轮播效果(跑马灯)
2021/05/14 Vue.js
Vue实现动态查询规则生成组件
2021/05/27 Vue.js