我需要比较滚动位置和元素位置(相对于窗口顶部),当两者具有相同的值时,做一些事情(这种情况console.log("we are the same")
)。
我尝试了以下代码,但它无效。我添加了一张图片以便更好地解释。
if ($('.contenedorbusiness figure').length) {
$(document).scroll(function(event) {
var alto_total = $(this).scrollTop();
var loader_business = $('.loader_business').offset().top;
if (alto_total == loader_business.top) {
console.log(alto_total + " == " + parseInt(loader_business));
}
});
}
我想要的是:
答案 0 :(得分:0)
将此更改为alto_total == loader_business.top
:alto_total == loader_business
.top
是存储在变量中的内容,因此在比较中无需执行此操作。
<强> DEMO 强>
我取出了您的初始if
语句,因此请确保其中的代码正在运行。您还会注意到无法快速滚动。如果您滚动浏览它而不暂停,则不会触发警报。
答案 1 :(得分:0)
以下更安全。 ==
可能会错过标记。
$(document).on("scroll", function (event) {
var alto_total = $(this).scrollTop();
var loader_business = $('div').offset();
console.log(alto_total + " == " + loader_business.top);
if (alto_total >= loader_business.top) {
alert('tomalo');
$(document).off("scroll");
}
});