在手机 app 的 webview 里, 我们有一个业务需求是: 点击tabs 然后使 div 滚动到底部和顶部
业务需求:
点击tab(不同tab 对应不同 dom ) => 内容盒子滚动 => 滚动到 指定 dom 元素的位置
出问题的代码:
document.querySelector(dom).scrollIntoView()
组件情况:
changeDetection 为 OnPush 策略。
父组件也为 OnPush 策略
预期结果:
能正常的滚动到 div 里 dom元素的位置
实际结果:
Android没有问题,IOS页面滚动了, 但是没有任何内容,但是点击一下就能显示内容.
已经做过的措施:
在代码之后已经加了 this.changeDetectorRef.markForCheck()与detectChanges()。 无效
(甚至一开始就加了定时器 每500ms 执行这两句代码)
this.zone.run(()=> {document.querySelector(dom).scrollIntoView()
}) 无效
把代码换成 dom.scrollTo() 这种形式, 也无效。
困扰一天了啊, 不知道怎么解决这个东西,请问有大佬们遇到过这样的问题吗
试试这样回到顶部