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监听鼠标滚轮事件浅析
Jun 05 Javascript
JS+CSS实现实用的单击输入框弹出选择框的方法
Feb 28 Javascript
JavaScript判断页面加载完之后再执行预定函数的技巧
May 17 Javascript
Javascript删除指定元素节点的方法
Jun 21 Javascript
前端面试题及答案整理(二)
Aug 26 Javascript
微信小程序  简单实例(阅读器)的实例开发
Sep 29 Javascript
浅谈js中几种实用的跨域方法原理详解
Dec 02 Javascript
jQuery实现鼠标滑过图片移动特效
Dec 08 Javascript
纯JavaScript实现实时反馈系统时间
Oct 26 Javascript
node app 打包工具pkg的具体使用
Jan 17 Javascript
js 判断当前时间是否处于某个一个时间段内
Sep 19 Javascript
在VUE style中使用data中的变量的方法
Jun 19 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一句话cmdshell新型 (非一句话木马)
2009/04/18 PHP
解析php取整的几种方式
2013/06/25 PHP
PHP防止图片盗用(盗链)的方法小结
2016/11/11 PHP
thinkphp3.2实现在线留言提交验证码功能
2017/07/19 PHP
laravel http 自定义公共验证和响应的方法
2019/09/29 PHP
来自国外的30个基于jquery的Web下拉菜单
2012/06/22 Javascript
js用Date对象处理时间实现思路及代码
2013/01/31 Javascript
jQuery页面加载初始化常用的三种方法
2014/06/04 Javascript
js实现下拉列表选中某个值的方法(3种方法)
2015/12/17 Javascript
正则表达式优化JSON字符串的技巧
2015/12/24 Javascript
JavaScript代码实现左右上下自动晃动自动移动
2016/04/08 Javascript
JS上传组件FileUpload自定义模板的使用方法
2016/05/10 Javascript
ES6概念 ymbol.for()方法
2016/12/25 Javascript
jQuery的三种bind/One/Live/On事件绑定使用方法
2017/02/23 Javascript
JS实现批量上传文件并显示进度功能
2017/06/27 Javascript
vue-cli中打包图片路径错误的解决方法
2017/10/26 Javascript
jQuery实现图片简单轮播功能示例
2018/08/13 jQuery
layui点击按钮添加可编辑的一行方法
2018/08/15 Javascript
浅谈微信页面入口文件被缓存解决方案
2018/09/29 Javascript
详解vue或uni-app的跨域问题解决方案
2020/02/21 Javascript
JS如何把字符串转换成json
2020/02/21 Javascript
Node.js API详解之 string_decoder用法实例分析
2020/04/29 Javascript
Python实现数通设备端口使用情况监控实例
2015/07/15 Python
Python代码解决RenderView窗口not found问题
2016/08/28 Python
Django权限机制实现代码详解
2018/02/05 Python
Python cookbook(数据结构与算法)在字典中将键映射到多个值上的方法
2018/02/18 Python
python 利用栈和队列模拟递归的过程
2018/05/29 Python
Python semaphore evevt生产者消费者模型原理解析
2020/03/18 Python
python中scrapy处理项目数据的实例分析
2020/11/22 Python
关于清明节的演讲稿
2014/09/13 职场文书
秋季运动会演讲稿
2014/09/16 职场文书
自查自纠整改报告
2014/11/06 职场文书
辅导员学期工作总结
2015/08/14 职场文书
安全教育主题班会总结
2015/08/14 职场文书
上级领导检查欢迎词
2015/09/30 职场文书
教你怎么用Python实现GIF动图的提取及合成
2021/06/15 Python