解决scrollLeft、scrollTop为0
最近遇到从外面点之后弹框,显示当前是第几组,并且滚动到当前位置的需求
遇到的问题:第一次获取可以获取的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相关推荐
- 解决ajax的status=0问题
解决ajax的status=0问题 参考文章: (1)解决ajax的status=0问题 (2)https://www.cnblogs.com/Jimmy009/archive/2011/12/25/ ...
- 成功解决成功解决return _iterencode(o, 0) ValueError: Circular reference detected
成功解决成功解决return _iterencode(o, 0) ValueError: Circular reference detected 目录 解决问题 解决思路 解决方法 解决问题 retu ...
- 成功解决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 ...
- 成功解决TypeError: sequence item 0: expected str instance, list found
成功解决TypeError: sequence item 0: expected str instance, list found 目录 解决问题 解决思路 解决方法 解决问题 TypeError: ...
- 成功解决TypeError: sequence item 0: expected str instance, bytes found
成功解决TypeError: sequence item 0: expected str instance, bytes found 目录 解决问题 解决思路 解决方法 解决问题 TypeError: ...
- docker php 乱码,如何解决docker安装zabbix5.0界面乱码
如何解决docker安装zabbix5.0界面乱码? zabbix图形界面乱码如下: 解决: docker部署zabbix-web和源码安装zabbix-web一样,字体都是存储在/usr/share ...
- 解决重启VCSA 6.0,访问vsphere web client提示:503 Service Unavailable错误
解决重启VCSA 6.0,访问vsphere web client提示:503 Service Unavailable错误 https://www.pianshen.com/article/93205 ...
- 解决重启VCSA 6.0提示:503 Service Unavailable错误
解决重启VCSA 6.0提示:503 Service Unavailable错误 有时候在重启VCSA6.0之后,可能半天无法登录到VCSA的vSphere Web Client,登录界面提示如下图所 ...
- 关于解决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 ...
- 一种解决Android studio 3.0 Build报错的方法
一种解决Android studio 3.0 Build报错的方法 参考文章: (1)一种解决Android studio 3.0 Build报错的方法 (2)https://www.cnblogs. ...
最新文章
- 开源交互式自动标注工具EISeg
- Matlab与线性代数 -- 矩阵的大小
- java f反射_java反射机制[基础学习]
- Ubuntu Server 18.04 与 MySQL 5.7
- 天池-街景字符编码识别2-数据读取与数据扩增
- 企业任务管理工具“日事清”获星河互联1000万A轮融资
- WPF 凭证分录控件
- GitHub 新手使用手册
- mysql-回表查询是什么
- SQL 日期函数的使用方法
- 教学网站毕业设计源码【演示视频】
- 解决win7下allegro中光标由小十字改为满屏十字后出现残影的问题
- android webview同步,android httpclient与webview cookie同步
- 粒子滤波算法理解及实现
- 调试EasyDarwin开源项目EasyCamera-HK接入海康IPCamera 摄像机所遇到的大坑
- 拼写检查工具是android,Android基础知识之拼写检查框架
- 51单片机74HC595级联测试proteus
- @Responsebody utf8 Chinese gibberish
- 在excel中如何进行快速筛选
- Android:Preference
热门文章
- win7计算机连接xp计算机,局域网中xp怎么连接win7共享打印机
- lammps教程:以计算Fe晶格常数为例介绍jump命令使用
- 如何给普通用户设置 sudo 权限
- dnsmasq no body user or group
- 初识C语言:从0开始,由菜鸟变大牛 (完结)
- sklearn各种回归和预测
- (转)关于SLG游戏引入兰切斯特方程的设想
- 失业的程序员(十三):团队平衡
- Mybatis中的java.io.NotSerializableException
- 安装OpenResty