在 iPad 等移动设备上,我想禁用仅在支持 position:fixed 时才有效的功能。有没有办法在不使用用户代理字符串的情况下检测这些设备?原因是我想尽可能避免搜索 iPad、iPhone、iPod、Android 等。
问问题
3694 次
2 回答
3
运行以下函数来测试position:fixed
支持。
功能 () { var isSupported = null; 如果(document.createElement){ var el = document.createElement("div"); if (el && el.style) { el.style.position = "固定"; el.style.top = "10px"; var root = document.body; if (root && root.appendChild && root.removeChild) { root.appendChild(el); isSupported = el.offsetTop === 10; root.removeChild(el); } } } 返回支持; }
于 2010-10-12T05:42:00.620 回答
0
还会在 Opera Mini 上返回误报。
为什么不简单地设置一个位置:固定在某个元素上,然后再读回来呢?如果 position:fixed 不支持返回值,理论上不应该等于 fixed
这在 Opera Mini 上不起作用:您可以将位置设置为“固定”,即使不支持它也会读取为“固定”。
于 2013-06-24T01:02:48.503 回答