gpt4 book ai didi

javascript - nightwatch.js - 滚动直到元素可见

转载 作者:行者123 更新时间:2023-11-30 15:50:48 27 4
gpt4 key购买 nike

我想滚动页面直到所需的元素出现可见。

我试过:

    browser.execute(function () {
window.scrollBy(0, 10000000);
}, []);

browser.getLocationInView("<selector>", function(result) {
this.assert.equal(typeof result, "object");
this.assert.equal(result.status, 0);
this.assert.equal(result.value.x, 200);
this.assert.equal(result.value.y, 200);
});

第一次不滚动页面,第二次失败,因为元素不可见。

如何解决这个问题?我想滚动直到元素出现可见。

最佳答案

如果你使用的是 JQuery,你可以这样做:

browser.execute(function () {
$(window).scrollTop($('some-element').offset().top - ($(window).height() / 2));
}, []);

或者使用纯 JavaScript:

browser.execute(function () {
document.getElementById("some-id").scrollIntoView();
}, []);

此外,在某些情况下我建议使用 Nightwatch's waitForElementVisible而不是断言,因为当使用断言时,您仅在给定时刻检查元素是否可见,但使用 waitForElementVisible 您可以指定等待它可见的时间。

如果元素之前是隐藏的,则在运行断言之前它可能不可见,这会导致断言失败,即使该元素实际上是可见的。

关于javascript - nightwatch.js - 滚动直到元素可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39372354/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com