1. 原理是通过设置时间轴盒子overflow-x: scroll;横向溢出的时候出现滚动条; (同理,制作纵向时间轴则设置overflow-y: scroll)
  2. 在时间轴盒子外层再包裹一个固定大小的div,该盒子高度要比时间轴的盒子高度小20px,设置overflow:hidden,则可以隐藏掉时间轴盒子出现的滚动条;
css代码:
.car-time-bar{width: 885px;height: 220px;margin: 22px 24px;padding: 0 16px;position: relative;overflow: hidden;
}
.car-time-bar-content{width: 885px;height: 240px;overflow-x: scroll;overflow-y: hidden;white-space: nowrap;
}/* 时间轴左右两侧分别放置两个按钮 点击左划和点击右划 */
.nv_lf{width: 16px;height: 22px;background: url("../img/time_bar_l.png") no-repeat;position: absolute;left: 0;top: 50%;margin-top: -11px;
}
.nv_rt{width: 16px;height: 22px;background: url("../img/time_bar_r.png") no-repeat;position: absolute;right: 0;top: 50%;margin-top: -11px;
}

样式的部分不多赘述,每一份设计稿设计都不一致,主要是理解方法

时间轴滑动的原理是通过点击按钮控制滚动条滚动,使用setInterval模拟实现平滑滚动;
js代码如下:

    var nvLf = $('左划按钮id'),nvRg = $('右划按钮id'),timeBar = document.getElementById('时间轴盒子id');nvLf.on('click',function () {var times = 0;var leftScroll = setInterval(function () {var leftLen = timeBar.scrollLeft;var step = leftLen - 10;timeBar.scrollLeft = step;times += 1;if(times == 18){clearInterval(leftScroll);}},1);});nvRg.on('click',function () {var times = 0;var leftScroll = setInterval(function () {var leftLen = timeBar.scrollLeft;var step = leftLen + 10;timeBar.scrollLeft = step;times += 1;if(times == 18){clearInterval(leftScroll);}},1);});

js用滚动条模拟横向时间轴相关推荐

  1. CSS实现一个动态横向时间轴

    CSS实现一个动态横向时间轴 先看效果 html <template><x-view class="stepFlex"><x-viewv-for=&q ...

  2. Vue,swipper手写横向时间轴

    在一次需求中,UI交互用是关于时间轴,手写代码如下: HTML代码: HTML: <!-- 时间轴 --><div class="swiper-container" ...

  3. vue实现横向时间轴

    最近项目需求,一个横向的时间轴,看了看elmentUi只有一个纵向的,干脆自己手撸一个 效果图如下: <div class="Timeline"><h2>操 ...

  4. android自定义横向时间轴,Android自定义时间轴的实现过程

    本文讲述Android自定义时间轴的实现过程,供大家参考,具体内容如下 时间轴效果,实际上非常简单,就是listView中一个又一个的条目而已-.大家可以只关注一个条目. 首先展示一个条目的布局效果 ...

  5. js写的 几款时间轴

    1.使用CSS3和jQuery制作的水平时间轴 这是一个可以在PC和移动端表现非常棒的水平时间轴,它由上部水平滑块和下部时间点对应的内容区块,点击时间轴上的时间点,下部内容会滑动到对应的内容区块.使用 ...

  6. js+css个人工作状态时间轴-模拟企业微信个人天日程表

    代码: <head><style>* {padding: 0px;margin: 0px;box-sizing: border-box;user-select: none;}. ...

  7. vue 实现横向时间轴

    效果: <template><!--时间线--><div class="timeLine" style="overflow: hidden; ...

  8. 分享66个JS时间轴特效,总有一款适合您

    分享66个JS时间轴特效,总有一款适合您 66个JS时间轴特效下载链接:https://pan.baidu.com/s/1DD8EqIZjsmzpRB0pHkzUdg?pwd=pgw4  提取码:pg ...

  9. Vue时间轴(横向)

    可自定义设置以下属性: 时间轴数据(timelineData),必传 初始选中年份(activeYear),默认2020 效果如下图(自适应均匀排列,每个元素周围分配相同的空间<space-ar ...

最新文章

  1. SENet双塔模型:在推荐领域召回粗排的应用及其它
  2. jQuery避免$符和其他JS库冲突的方法对比
  3. 4g能用吗64java_java – 用于4G内存的JBoss 7内存配置,64位
  4. weexpack占据的存储空间
  5. apache spark_Apache Spark Job的剖析
  6. python做excel表格代码_[宜配屋]听图阁
  7. [论文阅读] Variational Adversarial Active Learning
  8. python---之os.path.split()函数
  9. DB9接口定义 串口接口定义 MAX232电路
  10. ug二次开发python_学习UG NX软件二次开发你必须具备这些基础!
  11. tftp服务器怎么开启linux,启动Linux下的TFTP服务器
  12. UT2012学习笔记
  13. PBOC规范研究之十 ---标准动态数据认证(转)
  14. 检查计算机无法更新,Win7提示Windows Update当前无法检查更新,因为未运行服务解决方法...
  15. 域名网在线出售域名源码
  16. 【深入浅出IOS开发】设置图片水印
  17. 【备忘】2018年最新尚硅谷全套Java、Android、HTML5前端视频教程下载
  18. 心理学上的被动_精神分析心理学:人际关系中的被动攻击(1)
  19. VMware P2V 转换实验
  20. CV2 图像归一化函数

热门文章

  1. 如何在 Excel 里将两部分数据进行横向合并(即 Outer Join)?
  2. 根据不同情况给孩子取名的方法
  3. Java学习 day12 (常用API2)Object、Date、DateFormat、Calendar、System、StringBuilder、包装类
  4. 响铃:商业化效果显著,她经济才是美图破局的利器
  5. 【原创】盗墓笔记电影超强逻辑详解
  6. 【Mac】Alfred4有道翻译的workflow实现
  7. APK动态加载框架(DL)解析
  8. 10,少年白_接触计算机的这几年
  9. Metamask浏览器的钱包插件
  10. ffalcon电视html接口,FFALCON雷鸟新极客智屏,新极客,新选择