硬重新加载页面后删除一些dom元素

时间:2019-07-07 19:30:07

标签: javascript jquery

我有这段代码可以删除某些DOM元素(如果它们位于#point以下)。

有时可以,有时-不能。

在重新加载页面(Ctrl F5)之后-它永远无法工作。元素不会被删除。

F5之后-主要起作用。

有帮助吗?

$(document).ready(function(){
    var aoff = $('#point').position();
    var apoint = aoff.top;
    $('.bpart').each(function(){
        let boff = $(this).position();
        let bpoint = boff.top + $(this).height();
        if(bpoint > apoint){$(this).remove();}
    });
});

1 个答案:

答案 0 :(得分:2)

您提供的有关F5与硬刷新的信息确实有助于缩小问题的范围!

问题是您的代码在加载映像之前正在运行。因此,图片元素的高度为0px,这导致您的JS无法正常运行。

要解决此问题,请等待$(document).ready,而不是在运行代码之前等待$(window).load。页面上的图像已加载后将触发。