最近遇到从外面点之后弹框,显示当前是第几组,并且滚动到当前位置的需求
遇到的问题:第一次获取可以获取的scrollWidth,第二次打开弹框就是0,并且设置scrollLeft也不起作用

解决办法:
延时获取dom元素,【可以把document换成this.$el】
需要nextTick

在这之前我们可以先检查一下 是不是当前dom元素可以滚动,如果输出的值有变化 那么dom元素就没有问题

window.addEventListener('scroll', () => {let matchContent = this.$el.querySelector('.match-name-option')console.log(matchContent.scrollLeft)
}, true)
public lastName () {if (this.activeIndex-- === 0) {this.activeIndex = 0;}this.$emit('index-change', this.activeIndex);this.scrollLeft();}public nextName () {if (this.activeIndex++ === this.relationGroupOptions.length - 1) {this.activeIndex = this.relationGroupOptions.length - 1;}this.$emit('index-change', this.activeIndex);this.scrollLeft();}private scrollLeft () {this.$nextTick(() => {setTimeout(() => {const matchContent = this.$el.querySelector('.match-name-option');if (matchContent) {matchContent.scrollLeft = (matchContent.scrollWidth / this.relationGroupOptions.length * this.activeIndex);}}, 10)});}

补充
网页可见区域宽: document.body.clientWidth
网页可见区域高: document.body.clientHeight
网页可见区域宽: document.body.offsetWidth (包括边线的宽)
网页可见区域高: document.body.offsetHeight (包括边线的高)
网页正文全文宽: document.body.scrollWidth
网页正文全文高: document.body.scrollHeight
网页被卷去的高: document.body.scrollTop
网页被卷去的左: document.body.scrollLeft

解决scrollLeft、scrollTop为0相关推荐

  1. 解决ajax的status=0问题

    解决ajax的status=0问题 参考文章: (1)解决ajax的status=0问题 (2)https://www.cnblogs.com/Jimmy009/archive/2011/12/25/ ...

  2. 成功解决成功解决return _iterencode(o, 0) ValueError: Circular reference detected

    成功解决成功解决return _iterencode(o, 0) ValueError: Circular reference detected 目录 解决问题 解决思路 解决方法 解决问题 retu ...

  3. 成功解决ValueError: With n_samples=0, test_size=0.3 and train_size=None, the resulting train set will be

    成功解决ValueError: With n_samples=0, test_size=0.3 and train_size=None, the resulting train set will be ...

  4. 成功解决TypeError: sequence item 0: expected str instance, list found

    成功解决TypeError: sequence item 0: expected str instance, list found 目录 解决问题 解决思路 解决方法 解决问题 TypeError: ...

  5. 成功解决TypeError: sequence item 0: expected str instance, bytes found

    成功解决TypeError: sequence item 0: expected str instance, bytes found 目录 解决问题 解决思路 解决方法 解决问题 TypeError: ...

  6. docker php 乱码,如何解决docker安装zabbix5.0界面乱码

    如何解决docker安装zabbix5.0界面乱码? zabbix图形界面乱码如下: 解决: docker部署zabbix-web和源码安装zabbix-web一样,字体都是存储在/usr/share ...

  7. 解决重启VCSA 6.0,访问vsphere web client提示:503 Service Unavailable错误

    解决重启VCSA 6.0,访问vsphere web client提示:503 Service Unavailable错误 https://www.pianshen.com/article/93205 ...

  8. 解决重启VCSA 6.0提示:503 Service Unavailable错误

    解决重启VCSA 6.0提示:503 Service Unavailable错误 有时候在重启VCSA6.0之后,可能半天无法登录到VCSA的vSphere Web Client,登录界面提示如下图所 ...

  9. 关于解决Server Tomcat v9.0 Server at localhost failed to start的问题

    关于解决Server Tomcat v9.0 Server at localhost failed to start的问题 参考文章: (1)关于解决Server Tomcat v9.0 Server ...

  10. 一种解决Android studio 3.0 Build报错的方法

    一种解决Android studio 3.0 Build报错的方法 参考文章: (1)一种解决Android studio 3.0 Build报错的方法 (2)https://www.cnblogs. ...

最新文章

  1. 开源交互式自动标注工具EISeg
  2. Matlab与线性代数 -- 矩阵的大小
  3. java f反射_java反射机制[基础学习]
  4. Ubuntu Server 18.04 与 MySQL 5.7
  5. 天池-街景字符编码识别2-数据读取与数据扩增
  6. 企业任务管理工具“日事清”获星河互联1000万A轮融资
  7. WPF 凭证分录控件
  8. GitHub 新手使用手册
  9. mysql-回表查询是什么
  10. SQL 日期函数的使用方法
  11. 教学网站毕业设计源码【演示视频】
  12. 解决win7下allegro中光标由小十字改为满屏十字后出现残影的问题
  13. android webview同步,android httpclient与webview cookie同步
  14. 粒子滤波算法理解及实现
  15. 调试EasyDarwin开源项目EasyCamera-HK接入海康IPCamera 摄像机所遇到的大坑
  16. 拼写检查工具是android,Android基础知识之拼写检查框架
  17. 51单片机74HC595级联测试proteus
  18. @Responsebody utf8 Chinese gibberish
  19. 在excel中如何进行快速筛选
  20. Android:Preference

热门文章

  1. win7计算机连接xp计算机,局域网中xp怎么连接win7共享打印机
  2. lammps教程:以计算Fe晶格常数为例介绍jump命令使用
  3. 如何给普通用户设置 sudo 权限
  4. dnsmasq no body user or group
  5. 初识C语言:从0开始,由菜鸟变大牛 (完结)
  6. sklearn各种回归和预测
  7. (转)关于SLG游戏引入兰切斯特方程的设想
  8. 失业的程序员(十三):团队平衡
  9. Mybatis中的java.io.NotSerializableException
  10. 安装OpenResty