我正在开发一个React/Ionic应用程序。
在这个页面上,我有一个单页的应用程序部分。它有多个标签。当你点击标签时,新的内容显示,但它保留了前一页的滚动位置。
甚至当我在离子模式下检查应用程序时,在Web浏览器中,我在控制台中键入JS,我也无法强制页面向上滚动。我已经尝试在useEffect中执行大部分代码,所以我试着简化一些事情,直接在控制台中写JS,我在DOM中查看元素,并尝试定位它们。我可以抓取元素,但对它们调用以下任何方法似乎都不起作用。
我试着向上滚动使用:
document.querySelector('ion-app').scroll(0,0)
document.querySelector('ion-app').scrollHeight = 0
document.querySelector('ion-page').scrollIntoView
document.getElementsByClassName('account-settings-container')[0].scroll(0,0)
document.getElementsByClassName('account-settings-container')[0].scrollTop(0,0);
如果我能在浏览器中使用它,我想它会帮助我弄清楚实际的代码更改。有人对如何做到这一点有任何建议吗?
更新:奇怪的是,当我像这样复制完全相同的DOM元素时,它就可以工作了。
document.querySelector("#root-app > ion-app > div:nth-child(4) > ion-router-outlet > div > ion-content > div > div").scrollIntoView();
1条答案
按热度按时间zvokhttg1#
第三次尝试也会成功,如果你像函数一样调用它。