你离得很近!!
assert.dom不返回元素,元素和没有
get
房产,所以你可能想看看
scrollHeight
和
clientHeight
直接:
例如,在
My ember-primitives project
,我计算滚动顶部位置如下:
function getTop(element?: Element | null | undefined) {
assert('Could not find scroller', element);
return element.scrollHeight - element.clientHeight;
}
所以你可以定义一个
hasScrollBar
这样地:
function hasScrollbar(element?: Element | null | undefined) {
assert(`Can't check if a scrollbar exists on an element, if the element doesn't exist`, element);
return element.scrollHeight === element.clientHeight;
}
这是
an example set of tests
用于使用滚动位置。
使用
@ember/test-helpers
,您可以通过选择器自信地获取元素(忽略测试容器外的元素)
import { find } from '@ember/test-helpers';
// ...
const scrollElement = find('[data-test-user-list-ul-element]');
// ...
assert.true(hasScrollbar(scrollElement), 'element has a scrollbar');
参考文献: