gpt4 book ai didi

javascript - Jasmine 与五行的位置

转载 作者:行者123 更新时间:2023-11-28 02:45:47 28 4
gpt4 key购买 nike

我想测试当元素经过窗口中间时是否会发生某些情况。我只是似乎不明白。这是我的源文件:

        checkIfWorkInMiddle: function(element) {
var middelOfScreen = this.getMiddleOfScreen();
var posAboveBottom = this.getPosAboveBottom(element);
if (posBottomAboveBottom > middelOfScreen) {
return true;
}

元素的位置取决于滚动位置。当我进行测试时,该元素始终位于屏幕中间下方。我如何在测试中更改此设置?我的规范文件如下:

describe("Get Middle of screen" , function() {
it('returns true if above the middle of screen' , function() {
var fakeElement = Object.create( blocks );
var x = fakeElement.checkIfWorkInMiddle(element);

expect(x).toBeTruthy();
});

});

所以这在测试中总是返回 false。在测试中我可以做什么来强制 posBottomAboveBottom 为不同的值。那么实际上是伪造了一个滚动事件吗?我希望我的问题很清楚?

最佳答案

你可以尝试使用

 window.scrollTo(x,y);

然后传递中间或中间以下的值,例如 y = 500。这将定位窗口,以便 Jasmine 可以运行测试。

it("check is .... ", function(){
window.scroll(0,400);
var fakeElement = Object.create( blocks );
var x = fakeElement.checkIfWorkInMiddle(element);

expect(x).toBeTruthy();
})

关于javascript - Jasmine 与五行的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11910393/

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