当前位置: 移动技术网 > IT编程>开发语言>JavaScript > vue 框架下自定义滚动条(easyscroll)实现方法

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

2019年09月06日  | 移动技术网IT编程  | 我要评论

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

//插件采用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>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持移动技术网。

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网