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 相关文章推荐
js 高效去除数组重复元素示例代码
Dec 19 Javascript
javascript回车完美实现tab切换功能
Mar 13 Javascript
jQuery表格插件datatables用法汇总
Mar 29 Javascript
Extjs实现下拉菜单效果
Apr 01 Javascript
Bootstrap模块dropdown实现下拉框响应
May 22 Javascript
jQGrid Table操作列中点击【操作】按钮弹出按钮层的实现代码
Dec 05 Javascript
Javascript中for循环语句的几种写法总结对比
Jan 23 Javascript
微信小程序 开发之全局配置
May 05 Javascript
JS异步执行结果获取的3种解决方式
Feb 19 Javascript
vue中 this.$set的用法详解
Sep 06 Javascript
vue2路由基本用法实例分析
Mar 06 Javascript
vue3使用vue-count-to组件的实现
Dec 25 Vue.js
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
CI框架入门示例之数据库取数据完整实现方法
2014/11/05 PHP
php实现用于删除整个目录的递归函数
2015/03/16 PHP
php实现XSS安全过滤的方法
2015/07/29 PHP
WordPress中给文章添加自定义字段及后台编辑功能区域
2015/12/19 PHP
ThinkPHP3.2.2实现持久登录(记住我)功能的方法
2016/05/16 PHP
PHP控制前台弹出对话框的实现方法
2016/08/21 PHP
购物车实现的几种方式优缺点对比
2018/05/02 PHP
EXTJS内使用ACTIVEX控件引起崩溃问题的解决方法
2010/03/31 Javascript
基于Jquery制作的幻灯片图集效果打包下载
2011/02/12 Javascript
js获取select默认选中的Option并不是当前选中值
2014/05/07 Javascript
js实现向右横向滑出的二级菜单效果
2015/08/27 Javascript
JS+CSS实现TreeMenu二级树形菜单完整实例
2015/09/18 Javascript
全面解析JavaScript中“&amp;&amp;”和“||”操作符(总结篇)
2016/07/18 Javascript
基于Marquee.js插件实现的跑马灯效果示例
2017/01/25 Javascript
vue2.0的contextmenu右键弹出菜单的实例代码
2017/07/24 Javascript
H5+C3+JS实现五子棋游戏(AI篇)
2020/05/28 Javascript
JS获取月的第几周和年的第几周实例代码
2018/12/05 Javascript
Nodejs实现用户注册功能
2019/04/14 NodeJs
vue--vuex详解
2019/04/15 Javascript
Typescript 中的 interface 和 type 到底有什么区别详解
2019/06/18 Javascript
浅谈Python中的数据类型
2015/05/05 Python
Python实现网络端口转发和重定向的方法
2016/09/19 Python
用python写一个windows下的定时关机脚本(推荐)
2017/03/21 Python
Python实现统计代码行的方法分析
2017/07/12 Python
python WindowsError的错误代码详解
2017/07/23 Python
python dataframe向下向上填充,fillna和ffill的方法
2018/11/28 Python
python opencv 图像边框(填充)添加及图像混合的实现方法(末尾实现类似幻灯片渐变的效果)
2020/03/09 Python
微软俄罗斯官方网站:Microsoft俄罗斯
2016/09/18 全球购物
埃弗顿足球俱乐部官方网上商店:Everton Direct
2018/01/13 全球购物
德国高品质男装及配饰商城:Cultizm(Raw Denim原色牛仔裤)
2018/04/16 全球购物
护士辞职信模板
2014/01/20 职场文书
《草虫的村落》教学反思
2014/02/16 职场文书
应届毕业生自荐信例文
2014/02/26 职场文书
三傻大闹宝莱坞观后感
2015/06/03 职场文书
Redis中一个String类型引发的惨案
2021/07/25 Redis
MySQL中rank() over、dense_rank() over、row_number() over用法介绍
2022/03/23 MySQL