2016-11-05 166 views
2

例如滚动时执行,但是当我向下滚动时它也被附加。这意味着当我到达原始文本的末尾时,大约有20个附加段落。

这只发生在移动设备上(到目前为止我已经检查过Chrome,Safari和Firefox),而不是在桌面浏览器上。

有没有办法阻止这种情况发生,只有当窗口(你看到)被调整大小后才附加段落? 或者可能只有调整大小内的代码每隔一段时间执行一次?

感谢。

+0

你确定这是滚动吗?它不适合我。 [小提琴](https://jsfiddle.net/rwwybjoj/) – putvande

+0

也许你有另一个滚动事件监听器什么是手动触发调整大小事件! –

+0

它不会在滚动时追加任何p标签。你可以发布你的剩余代码,如果你有其他东西添加了这个。 – frnt

回答

0

移动设备的问题在于,他们有滚动时隐藏的浏览器工具栏,导致屏幕更改(激活resize事件),这意味着您必须对代码进行一些验证并检查原因是调整大小事件被解雇。

我使用的一种方法是保存窗口宽度并检查正确的窗口宽度是否相同或更改。如果它发生了变化,那么这意味着追加应该发生(在你的情况下)。

var dwidth = $(window).width(); 

$(window).resize(function(){ 
    var wwidth = $(window).width(); 
    if(dwidth!==wwidth){ 
     dwidth = $(window).width(); 
     console.log('Width changed'); 
    } 
});