不喜欢浏览器嗅探,模仿IE6的UA的浏览器太多了
/*
* 使用如下结构:
* <div style="position: absolute; top: 200px;"> <== outer
* <div style="position: fixed; top: 100px;"></div> <== inner
* </div>
*
* 如果浏览器支持fixed,由于fixed是相对于document定位的,因此无论body样式如何,top始终是100px
* 如果浏览器不支持fixed,被解释为static,则inner和top值无效,计算出来的inner的绝对top与outer相同
*/
var outer = document.createElement( ' div ' ),
inner = document.createElement( ' div ' ),
result = true ;
outer.style.position = ' absolute ' ;
outer.style.top = ' 200px ' ;
inner.style.position = ' fixed ' ;
inner.style.top = ' 100px ' ;
outer.appendChild(inner);
document.body.appendChild(outer);
if (inner.getBoundingClientRect &&
* 使用如下结构:
* <div style="position: absolute; top: 200px;"> <== outer
* <div style="position: fixed; top: 100px;"></div> <== inner
* </div>
*
* 如果浏览器支持fixed,由于fixed是相对于document定位的,因此无论body样式如何,top始终是100px
* 如果浏览器不支持fixed,被解释为static,则inner和top值无效,计算出来的inner的绝对top与outer相同
*/
var outer = document.createElement( ' div ' ),
inner = document.createElement( ' div ' ),
result = true ;
outer.style.position = ' absolute ' ;
outer.style.top = ' 200px ' ;
inner.style.position = ' fixed ' ;
inner.style.top = ' 100px ' ;
outer.appendChild(inner);
document.body.appendChild(outer);
if (inner.getBoundingClientRect &&
inner.getBoundingClientRect().top == outer.getBoundingClientRect().top
) {
result = false ;
}
result = false ;
}