只要有更多内容要显示,我想向下滚动页面。
例如,当您在Instagram上点击关注者时,会弹出一个对话框窗口,只要有更多关注者显示,它就会在您向下滚动时加载更多关注者。
我可以通过艰难的方式做到这一点,比如跟随者计数,然后在向下滚动时计算跟随者,当他们等于停止在那里滚动时。
但我想问你是否有更好的方法。
您可以通过比较其scrollTop和scrollHeight来检查可滚动元素是否位于底部。
以下工作:
scrollable = browser.div(class: 'j6cq2') # div with overflow-y=scroll
until browser.execute_script('return arguments[0].scrollTop + arguments[0].clientHeight >= arguments[0].scrollHeight', scrollable) do
browser.execute_script('arguments[0].scrollTop = arguments[0].scrollHeight', scrollable)
sleep(1)
end
请注意,我没有时间找到比使用#sleep更好的解决方案。但是,希望这会给你一个想法。