滚动时的 JavaScript 调整大小事件 - 移动设备

标签 javascript events mobile resize

我正在尝试制作一个移动网站。我在窗口上绑定(bind)了“调整大小”事件,当移动设备转动时(纵向<->横向),它应该重新排列元素。在 iPhone 和 Samsung Galaxy SII 上,当我向下滚动页面时会触发该事件,这不太好。

我该如何解决这个问题?

最佳答案

缓存视口(viewport)的宽度,如果宽度仍然相同,则在调整大小时返回 false。

一个小的 jQuery 片段:

    var cachedWidth = $(window).width();
    $(window).resize(function(){
        var newWidth = $(window).width();
        if(newWidth !== cachedWidth){
            //DO RESIZE HERE
            cachedWidth = newWidth;
        }
    });

关于滚动时的 JavaScript 调整大小事件 - 移动设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9361968/

相关文章:

javascript - react-datepicker 年份范围

javascript - jQuery 对象上的事件处理程序

javascript - 如何在桌面上显示时附加纯 jQuery 并在移动设备上显示时附加 jQuery Mobile?

react-native - 如何从 Expo 项目中禁用/删除 IDFA 工具

java - 移动拖放 ImageButton 时 ImageButtons 被压扁

JavaScript 警报卡住 iOS 浏览器

javascript - JS 函数不起作用

javascript - 数字数组可以转化为函数数组吗?

javascript - Node 事件发射器

c# - 将事件设置为空