Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery:当滚动条出现时如何触发windows调整大小事件_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript jQuery:当滚动条出现时如何触发windows调整大小事件

Javascript jQuery:当滚动条出现时如何触发windows调整大小事件,javascript,jquery,html,css,Javascript,Jquery,Html,Css,当页面上出现垂直滚动条时,需要触发windows调整大小事件。是否有任何方法可以使用javascript捕获滚动条外观事件 我对页面的宽度有问题,因为当垂直滚动条出现时,div会跳到下一行。当我调整页面大小时,它似乎工作正常,所以我想在垂直滚动条出现时手动触发调整大小事件。您可以使用setInterval来监视滚动条。如果文档宽度超过窗口宽度,可以手动触发window.resize事件 function checkForScrollbar() { if ($(window).width(

当页面上出现垂直滚动条时,需要触发windows调整大小事件。是否有任何方法可以使用javascript捕获滚动条外观事件


我对页面的宽度有问题,因为当垂直滚动条出现时,div会跳到下一行。当我调整页面大小时,它似乎工作正常,所以我想在垂直滚动条出现时手动触发调整大小事件。

您可以使用setInterval来监视滚动条。如果文档宽度超过窗口宽度,可以手动触发window.resize事件

function checkForScrollbar() {
    if ($(window).width() < $(document).width()) {
        $(window).trigger('resize');    
    }    
}

$(document).ready(function() {
    setInterval(function() { checkForScrollbar(); }, 500);   

    $(window).on('resize', function() {
        //Resize triggered.
        //Do Your Stuff
    });

});
函数checkForScrollbar(){
如果($(窗口).width()<$(文档).width()){
$(window.trigger('resize');
}    
}
$(文档).ready(函数(){
setInterval(函数(){checkForScrollbar();},500);
$(窗口).on('resize',function()){
//已触发调整大小。
//做你的事
});
});

看到这个JS提琴:

你可以使用这个:这将通过调整大小警报

$(window).on('load resize', function(){  
var w1 = $(window).width();
alert(w1);
 }) 

OrganicPanda发布了一个不需要计时器的聪明解决方案。基本上,他会在某个地方放置一个100%的iFrame,并在其上侦听“调整大小”事件:


如果您知道导致页面溢出的原因,可以将其用作事件侦听器(某种)。您的问题似乎完全不在您试图解决的问题之外。解决定位问题,不要为原本不好的解决方案编写解决方案。你能提供你尝试过的任何代码吗?@athms你的解决方案听起来不错,我可以有一些侦听器,但我需要在许多不同的地方添加它们,因为此页面溢出是由于不同的原因发生的。可能的重复解决了我的问题,但我不想经常监视宽度大小,有没有其他方法可以捕获滚动条外观事件?据我所知,不可能通过任何事件来监视滚动条的外观。如果在加载时出现此问题,可以将触发器放入.ready函数中。如果通过jQuery操作DOM,则始终可以在回调函数中提供checkForScrollbar函数。恐怕我需要看一些代码来给你进一步的建议。