位置: 编程技术 - 正文

javascript自定义滚动条实现代码(javascript自定义函数)

编辑:rootadmin

推荐整理分享javascript自定义滚动条实现代码(javascript自定义函数),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript自定义对象的方法,javascript自定义属性,javascript自定义对象,javascript自定义对象,javascript自定义对象的方法,javascript自定义函数一定要有返回值,javascript自定义对象,javascript自定义函数,内容如对您有帮助,希望把文章链接给更多的朋友!

在工作中经常会遇到内容会超出固定的一个范围,超出的内容一般会使用到滚动条来滚动显示。

但是用浏览器默认的滚动条经常被产品经理鄙视,可是用css却改变不了滚动条的样式,还好,有万能的js ^_^~~

网上有各种各样的插件,但最顺手的还是自己写的,还可以一边撸一边当学习,自己动手丰衣足食 (*^__^*)

其中这三个问题深深地困扰我:

1、滚动条高度 2、每次点击向上、向下按钮的时候滚动条应该移动多少距离 3、每拖动1px滚动条,页面需要移动多少?

整个的框架大概是长这样的:

先来看看第一个问题。

  由于目前已经知道内容区域的高度和内容可视高度以及滚动条可滚动区域的高度了,由于内容区域与滚动条每次移动的距离都是成正比的,所以第一个问题很好解决:

  滚动条可移动范围 / 滚动条高度 = 内容高度 / 内容可视高度

每次点击按钮的时候滚动条应该移动多少距离?

  这里我是给参数distance设置一个值来决定每次点按钮的时候,内容区域应该滚动多少的距离。改变这个值可以改变内容区域滚动的快慢,如果有更好的处理方法和建议记得告诉我喔~

目前,内容区域每次滚动的距离是知道了,剩下的是计算滚动条相对于应该移动多少距离?

javascript自定义滚动条实现代码(javascript自定义函数)

  滚动条可移动范围 /滚动条每次移动距离 = 内容区域高度 / 内容区域每次移动多少距离

效果如下:

这里还有一个问题,就是同时还得区分是单次点击还是长按。

所以得判断一下从按下按钮到松开时候的时长,目前设置为<ms为单次点击,否则为长按:

拖动滚动条的时候,每移动1px滚动条,内容区域需要移动多少?

  先知道每1PX的距离占滚动条可移动范围的百分之几,再用内容区域高度除以所得的这个百分比,就得出滚动条每移动1px内容区域相对滚动多少距离了。

  内容区域滚动的距离 = 内容区域高度 / (滚动条滚动区域 / 1)

demo完整代码如下:

注意:因为用的是seajs写的,所以稍微留意下文件的加载情况啦

css:

html:

js:

标签: javascript自定义函数

本文链接地址:https://www.jiuchutong.com/biancheng/381714.html 转载请保留说明!

上一篇:JavaScript File API实现文件上传预览

下一篇:JavaScript+html5 canvas实现本地截图教程

  • 离职员工奖金发放规定
  • 旧机器设备出口
  • 非征税期抄税如何解决
  • 用友会计报表
  • 计提年终奖可以冲减利润
  • 没有原始凭证怎么补税
  • 个体工商户税务申报如何网上申报
  • 无形资产摊销月底最后一天怎么算
  • 个税系统异常怎么申报
  • 银行存款利息收入要交增值税吗
  • 房产税的纳税义务
  • 免征土地增值税
  • 对方公司开发票我方未付款如何做分录?
  • 税收完税证明怎么打印
  • 收到社会保险基金管理局转来的失业保险金,社保代发
  • 收资料费怎么入账科目
  • 公司为什么要成立工会委员会
  • 电信宽带费发票专票
  • 金税盘忘记清卡了
  • 未到期责任准备金属于什么科目
  • 折旧费和摊销费怎么算
  • 企业购入机器设备供方登记
  • 核销以前年度的其他应付款
  • 进项税额及存货减值
  • 住房公积金扣除标准为每月
  • 预缴税款是否计入成本
  • Yii2使用驼峰命名的形式访问控制器的示例代码
  • phpemail正则
  • PadExe.exe - PadExe是什么进程 有什么用
  • 核定征收的小规模纳税人要做账吗
  • encore是什么软件
  • 解决中暑最有效方法
  • 取得短期借款会计科目
  • 带薪缺勤会计分录
  • PHP:GregorianToJD()的用法_日历函数
  • php strrchr
  • 企业如何转让
  • 存货的采购成本包括
  • 工会经费可以提出来使用吗
  • 制作个性化的奖杯或者奖状
  • php curl 封装
  • 命名空间 php
  • while循环语法结构
  • 所得税申报表上的营业成本怎么填
  • 小型微利企业增值税优惠政策2023最新
  • 电商每天利润表怎么做
  • 纳税总额怎么算
  • 财政拨款结余明细科目编码
  • 季节性临时工什么意思
  • 应付职工薪酬余额方向
  • 收到采购发票如何录入系统
  • 个体户 查账
  • 向税务局缴纳工会经费的没计提
  • 注册公司时的注册资金认缴是什么意思
  • 交耕地占用税如何交
  • 盈余公积提取多了
  • 进项税额转出的几种情况
  • 开外经证怎么预约办理
  • 销售折扣销货方式有哪些
  • 新建厂房费用可以直接计入管理费用么
  • 企业所得税缴纳模式
  • 企业办公楼房产税如何征收
  • 测距仪计入什么科目
  • 小微企业即征即退
  • 编制合并财务报表的依据是纳入合并
  • win8系统如何安装软件
  • 谷歌安装安卓
  • linux定时任务详解
  • cocos2dx-js
  • easyui grid
  • js中颜色对应代码
  • python计算文件大小
  • 安卓抓包apk
  • javascript巧用eval函数组装表单输入项为json对象的方法
  • 如何查询纳税信用等级证明
  • 广东省为什么电不够用
  • 电子税务局的社保不能扣款怎么办
  • 税务局的经济类型
  • 微众银行企业金融客服电话多少
  • 山西省地方税务局通用定额发票
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设