我的网站可以在任何大小的屏幕上呈现,包括移动设备和桌面设备。然而,如果用户改变方向(或在桌面设备上调整浏览器窗口大小),我的网站需要重新加载/重新呈现页面 - 它基本上是一个预览图片的画廊页面,设置了一定间距。问题在于,在移动浏览器上,由于URL栏自动隐藏功能,每当用户上下滚动时,调整大小事件就会触发。
我有一些Javascript代码可以处理大多数情况,只是当用户在桌面设备上垂直调整浏览器窗口大小时,这种边缘情况不会触发,因为脚本只会检查宽度的变化。
我有一些Javascript代码可以处理大多数情况,只是当用户在桌面设备上垂直调整浏览器窗口大小时,这种边缘情况不会触发,因为脚本只会检查宽度的变化。
var resizeTimeout;
var wow = window.outerWidth;
window.addEventListener('resize',
function(event) {
clearTimeout(resizeTimeout);
resizeTimeout = setTimeout(
function(){
if (window.outerWidth !== wow) {
window.location.reload(true);
wow = window.outerWidth;
}
}, 500
);
}
);
我已经阅读了有关浏览器检测字符串、特征检测和Modernizr的帖子。不知何故,Javascript中的媒体查询中的hover mq和pointer mq似乎对我无效。
有没有办法检测浏览器是否使用了那些讨厌的自动隐藏URL栏?这将有助于我找到用户在桌面上垂直调整浏览器窗口的情况。我不想禁用URL栏。但是,永久修复它以使其无法自动隐藏是我考虑的选项。有什么想法吗?