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(来自ibm)
Nov 10 Javascript
jQuery 中DOM 操作详解
Jan 13 Javascript
使用Javascript监控前端相关数据的代码
Oct 27 Javascript
js 实现获取name 相同的页面元素并循环遍历的方法
Feb 14 Javascript
关于Javascript中document.cookie的使用
Mar 08 Javascript
详解webpack 多入口配置
Jun 16 Javascript
深入理解React中何时使用箭头函数
Aug 23 Javascript
在vue中添加Echarts图表的基本使用教程
Nov 22 Javascript
详解微信UnionID作用
May 15 Javascript
微信小程序批量监听输入框对按钮样式进行控制的实现代码
Oct 12 Javascript
Element Cascader 级联选择器的使用示例
Jul 27 Javascript
vue 组件简介
Jul 31 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里的JS打印函数
2006/10/09 PHP
php仿ZOL分页类代码
2008/10/02 PHP
ThinkPHP中实例Model方法的区别说明
2010/08/21 PHP
使用php发送有附件的电子邮件-(PHPMailer使用的实例分析)
2013/04/26 PHP
Session的工作机制详解和安全性问题(PHP实例讲解)
2014/04/10 PHP
php+ajax导入大数据时产生的问题处理
2014/06/11 PHP
php网页版聊天软件实现代码
2016/08/12 PHP
PHP 验证身份证是否合法的函数
2017/02/09 PHP
获取JavaScript用户自定义类的类名称的代码
2007/03/08 Javascript
JQuery 构建客户/服务分离的链接模型中Table中的排序分析
2010/01/22 Javascript
JavaScript错误处理
2015/02/03 Javascript
Node.js 实现简单小说爬虫实例
2016/11/18 Javascript
Bootstrap中datetimepicker使用小结
2016/12/28 Javascript
详解vue.js移动端导航navigationbar的封装
2017/07/05 Javascript
[02:02]2018DOTA2亚洲邀请赛Mineski赛前采访
2018/04/04 DOTA
Android 兼容性问题:java.lang.UnsupportedOperationException解决办法
2017/03/19 Python
Tensorflow中的placeholder和feed_dict的使用
2018/07/09 Python
python如何将多个PDF进行合并
2019/08/13 Python
Python使用grequests(gevent+requests)并发发送请求过程解析
2019/09/25 Python
django实现用户注册实例讲解
2019/10/30 Python
详解Django中异步任务之django-celery
2020/11/05 Python
jupyter notebook快速入门及使用详解
2020/11/13 Python
利用python实现后端写网页(flask框架)
2021/02/28 Python
CSS3的Flexbox布局的简明入门指南
2016/04/08 HTML / CSS
html5播放视频且动态截图实现步骤与代码(支持safari其他未测试)
2013/01/06 HTML / CSS
建筑设计师岗位职责
2013/11/18 职场文书
村捐赠仪式答谢词
2014/01/21 职场文书
学生党员公开承诺书
2014/05/28 职场文书
学校安全生产月活动总结
2014/07/05 职场文书
运动会加油稿100字
2014/09/19 职场文书
幼儿教师师德师风自我剖析材料
2014/09/29 职场文书
依法行政工作汇报
2014/10/28 职场文书
二审答辩状格式
2015/05/22 职场文书
mysql 带多个条件的查询方式
2021/06/05 MySQL
MySQL 时间类型的选择
2021/06/05 MySQL
MySQL数据库 安全管理
2022/05/06 MySQL