On mobile devices such as the iPad, I would like to disable a feature that only works if position:fixed is supported. Is there a way to detect these devices without using th
also returns a false-positive on Opera Mini.
Why not simply set a position:fixed on some element and then read it back? If position:fixed not supported returned value, should not be equal to fixed in theory
that does not work on Opera Mini: you can set position to "fixed", it will read as "fixed" even though it is not supported.
Run the following function to test for position:fixed
support.
function () { var isSupported = null; if (document.createElement) { var el = document.createElement("div"); if (el && el.style) { el.style.position = "fixed"; el.style.top = "10px"; var root = document.body; if (root && root.appendChild && root.removeChild) { root.appendChild(el); isSupported = el.offsetTop === 10; root.removeChild(el); } } } return isSupported; }
From http://kangax.github.com/cft/#IS_POSITION_FIXED_SUPPORTED