加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

Window调整大小事件在jQuery中触发两次

发布时间:2020-12-14 04:16:01 所属栏目:Windows 来源:网络整理
导读:我运行了以下代码 $(document).ready(function() { var ivar = 0; $(window).resize(function() { console.log('$(window).height() ' + $(window).height() + ' - ' + ++ivar); });});? 每当我调整大小时,我发现事件发生了两次,即计数器’ivar’增加两次.
我运行了以下代码
$(document).ready(function() {

    var ivar = 0;

    $(window).resize(function() {
        console.log('$(window).height() ' + $(window).height() + ' - ' + ++ivar);
    });
});?

每当我调整大小时,我发现事件发生了两次,即计数器’ivar’增加两次.

任何人都可以告诉我在resize事件中发生的事情,使得计数器增加两倍

**编辑:
我正在通过双击窗口栏调整窗口大小.

谢谢

这是众所周知的问题.在某些浏览器中,resize被调用两次.我们可以创建计时器,这样只有当用户停止调整窗口大小时它才会调用我们的函数.
以下是您可以这样做的方法:
var globalTimer = null;

$(window).resize(function() {
    clearTimeout(globalTimer);
    globalTimer = setTimeout(doneResize,500);
});

function doneResize(){
  console.log('$(window).height() ' + $(window).height() + ' - ' + ++ivar);   
}?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读