我正在处理自适应网站。当用户看到需要自动播放的视频部分时,我们需要。如果为视频标记设置滚动顶部不起作用。但我设置scrolltop到窗口它工作正常。
<video id="test">
</video>
<script>
$(document).ready(function () {
$(window).scroll(function () {
var js=$('#test-28').scrollTop();
console.log(js);
});
});
</script>
它总是显示0
任何人都知道如何解决这个问题
答案 0 :(得分:1)
您需要使用offest().top
来达到video
元素的距离。 scrollTop
将获得window scroll
距离而非距离元素的距离。只需使用:
$('#test').offset().top
<强> jsFiddle 强>
$(window).scroll(function () {
var scrollTop = $(window).scrollTop();
var scrollToVid = $('#test').offset().top
console.log(scrollTop);
console.log(scrollToVid);
if ($(window).scrollTop() >= scrollToVid) {
alert('You reached to the video!');
}
});
答案 1 :(得分:0)
您也可以使用
document.body.scrollTop + Element.getBoundingClientRect().top
document.body.scrollTop
是文档已滚出视口的偏移量Element.getBoundingClientRect().top
是元素到视口顶部的偏移量。