Javascript $(窗口).resize()在移动设备上滚动时执行

Javascript $(窗口).resize()在移动设备上滚动时执行,javascript,jquery,Javascript,Jquery,例如: HTML 大量文本从页面上消失,因此您必须向下滚动 JavaScript $(window).resize(function(){ $("div").append("<p>appended</p>"); }); $(窗口)。调整大小(函数(){ $(“div”)。追加(追加); }); 这项功能可以在调整大小时按预期添加段落,但在向下滚动时也会添加段落。这意味着当我到达原文末尾时,会有大约20个附加段落 这只发生在移动设备上(到目前为止,我已经检查了

例如:

HTML

大量文本从页面上消失,因此您必须向下滚动

JavaScript

$(window).resize(function(){
    $("div").append("<p>appended</p>");
});
$(窗口)。调整大小(函数(){
$(“div”)。追加(追加

); });
这项功能可以在调整大小时按预期添加段落,但在向下滚动时也会添加段落。这意味着当我到达原文末尾时,会有大约20个附加段落

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

有没有一种方法可以阻止这种情况的发生,并且只有当窗口(您看到的)调整大小时才添加段落? 或者可能只让resize中的代码每隔一段时间执行一次


谢谢。

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

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


你确定这是在滚动上发生的吗?它不适合我。也许你有另一个滚动事件监听器,手动触发调整大小事件!它不会在滚动条上附加任何p标记。如果你还添加了其他代码,你能发布你的剩余代码吗?对不起,我忘了提到这只发生在移动设备@putvande上。后期编辑。@frnt这只是一个示例,所以它是我使用的唯一代码。见我上面的评论。
$(window).resize(function(){
    $("div").append("<p>appended</p>");
});
var dwidth = $(window).width();

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