就是如链接所示:http://oa-img.oss-cn-qingdao.aliyuncs.com/up-img/pic-60044/xknTNnFHsxFaEJYJ3P5ZD82jnfXWTjHj.png,点击有好看的滚动效果,代码如下:

html:<div className="carBrandStyle" style={{display:start?'block':'none',right:start?'0':'-110%'}}><ul id="ps" style={{marginTop: 0}}><li className="commonCarTitle text_center font_bold flex relative"><i className="iconfont icon-angleleft absolute font20" onClick={t.closeAll.bind(t,'all')}></i><span className="align_self_center">品牌</span></li>{brandList.map((items, index) => (<div><li className="byWords flex bg_ddd justify_content_center" id={words[index]}><span className="align_self_center font_bold fcolor_orange">{words[index]}</span></li>{items.map((item, index) => (<li className="flex" onClick={t.getCarSeries.bind(t,item.brand_id,item.brand_name)}><div className="flex align_self_center"><div className="carBrandImg align_self_center"><img src={item.car_logo_url} alt=""/></div><div className=" align_self_center">{item.brand_name}</div></div></li>))}</div>))}</ul><div className="rnm" style={{right:start?'0':'-110%'}}>{words.map((item,index) => (<div><a onClick={this.goScroll.bind(this,item)}>{item}</a></div>))}</div></div>css: .carBrandStyle  {position: absolute;z-index: 1000;top: 0;right: 0;bottom: 0;background: #fff;transition: all .3s linear;width: 100%;-webkit-overflow-scrolling: touch
}
.carBrandStyle ul  {height: 100%;overflow-y: scroll;-webkit-overflow-scrolling: touch
}.commonCarList .carBrandStyle li {height: 40px;border-bottom: 1px solid #ddd;padding-left: 10px;
}js:这才是重点吧goScroll(word){let total = (document.getElementById(word)).offsetTop;let container = document.getElementById('ps');//想要scrollTop生效必须让容器是height:100%;overflow:scroll才行。let distance = container.scrollTop;// 平滑滚动,时长500ms,每10ms一跳,共50跳let step = total / 50;if (total > distance) {smoothDown()} else {let newTotal = distance - total;step = newTotal / 50;smoothUp()}function smoothDown () {if (distance < total) {distance += step;container.scrollTop = distance;setTimeout(smoothDown, 10);} else {container.scrollTop = total;}}function smoothUp () {if (distance > total) {distance -= step;container.scrollTop = distance;setTimeout(smoothUp, 10)} else {container.scrollTop = total;}}}
复制代码

转载于:https://juejin.im/post/5aaf7c5e6fb9a028e46e7290

vue/react的hash模式下的锚点效果相关推荐

  1. Vue 移动端 hash模式下微信授权登录

    需求分析: 1.移动端微信公众号项目,需要获取微信授权进行登录 2.默认打开首页,在路由进入之前进行判断,有如下三种情况 3.本项目有两种账号类型:商家.企业,需在登录页进行选择 未授权过,跳到微信授 ...

  2. router锚点和html锚点,hash模式下Vue-router页面返回锚点(scroll behavior)实现

    在普通页面中,点击浏览器的返回按钮,在返回到上一页时会处在上次浏览的位置.单页面应用中,由于始终是同一个页面, 因此需要自行实现页面返回时的锚点.Vue-router的Scroll Behavior可 ...

  3. 解决vue路由hash模式下,微信网页授权问题

    解决vue路由hash模式下,微信网页授权问题 本人开发负责微信公众号端,菜单都是自定义菜单,然后每个菜单路径都是经过授权如:http://xxxx.com/ceshi/wechat/authoriz ...

  4. vue router中hash模式和history模式的区别

    面试问答     hash 模式与 history 模式的区别,这个也是面试常问的问题,不要小看这道题其实问到这里的时候那个面试官应该是个大牛,开发经验丰富,这个题其实就是考验你的开发经验是否属实. ...

  5. 微信分享的链接,手机打开白屏,单页面应用(Hash模式下),实现微信分享

    前言:现在将相关的产品分享至朋友圈,进行宣传,成为一种很常见的方式.本文,主要想分享一下,微信分享所遇到的坑,微信分享的链接,手机打开白屏,以及产生的原因. 前端微信分享的基本步骤: 一.绑定域名 先 ...

  6. vue react 路由history模式刷新404问题解决方案

    vue react 路由history模式刷新404问题解决方案 参考文章: (1)vue react 路由history模式刷新404问题解决方案 (2)https://www.cnblogs.co ...

  7. Vue在IE兼容模式下白屏解决方案

    Vue在IE兼容模式下白屏,主要原因是因为无法解析ES6语法: 需要安装babel-polyfill插件: yarn add babel-polyfill #或者 npm install babel- ...

  8. pyqtgraph 在Opengl模式下开启抗锯齿效果

    pyqtgraph 在Opengl模式下开启抗锯齿效果 修改pyqtgraph源码文件pyqtgraph/widgets/GraphicsView.py def useOpenGL(self, b=T ...

  9. vue hash模式下微信授权登录

    背景 vue-cli项目.路由是hash模式.需要授权的场景有:项目入口处(App.vue),指定页面(创建时.methods 方法内):可以携带参数 思路 由于hash模式# 号的存在,授权后链接会 ...

最新文章

  1. 计算机视觉中本质矩阵的概念,【计算机视觉】Lecture 19:本质矩阵和基础矩阵...
  2. 在4k扇区的磁盘上执行dbca会报ORA-27047 错误
  3. 交换机和路由器的区别_路由器与交换机的区别?
  4. reactjs组件的三大属性之props基本使用及props属性值检验
  5. C#中的前台线程和后台线程的区别
  6. JAVA基础学习预科部分 (Markdown + dox)2021/2/22持续更新中
  7. 在Java中使用Collat​​or和String类进行字符串比较
  8. 中国的 GitHub 要来了?
  9. 017、Linux下超实用的性能监测工具
  10. FPGA厂家谁家强?
  11. 【图像分割】基于pcnn脉冲神经网络结合区域生长算法实现图像分割附matlab代码
  12. Qt界面刷新优化的一些心得
  13. VMWARE虚拟机启动失败,模块“Disk”启动失败
  14. java meta-inf作用_java - META-INF的目的是什么?
  15. 计算机毕业设计Java新疆旅游专列订票系统(源码+系统+mysql数据库+Lw文档)
  16. 网易AI平台开放多项技术,助力网易七鱼智能客服升级
  17. android模拟power键,android 发送模拟按键
  18. 平安金融科技移动技术周报(第二期)
  19. Android简单电子书
  20. 谈谈用户留存率为何如此重要?

热门文章

  1. 网站访问量统计实现.
  2. 【AE模板】扁平化MG动画卡通人物解说角色场景元素包
  3. dedecms注入漏洞feedback.php,织梦(Dedecms) 5.1 feedback_js.php 注入漏洞
  4. %d %ld %lld
  5. WML语言基础-WML语言基础(WAP建站)
  6. MBA 消费者行为学 大白兔故事以及换装变化给老字号的启示
  7. unity2D:对话框Dialog——弹出、渐入渐出
  8. oracle01109,oracle解锁用户时报错ORA-01109: database not open的解决办法
  9. KAZE与SIFT算法比较
  10. PCI DSS合规性审核认证服务