需求是这样的,许多pc web页面的导航都是固定的,比如google的首页,现在要将这种固定的导航转移到mobile web下,很自然地就会想到position:fixed; bottom: 0,android下运行正常,但在iphone safari下就会出现问题,当滚动条滚动时,导航条就会出现屏幕的上方,黑乎乎的一块,很不协调。许多人推荐iscroll、jquery mobile等框架,但有时效果不如意或是得阅读框架源码进行二次开发,会花费好长一段时间的。经过一段时间的研究,找到了一种解决办法,比较简便,但效果还是比不上pc web。
<div id="fixnav" style=" position: absolute; z-index: 1000; height: 50px; opacity: 0.9;">nav</div>
<script type="text/javascript">
$(window).scroll(function(){
// 重点就是下面这一条语句的实现
$("#fixnav").css({top: window.innerHeight + window.scrollY - $("#fixnav").outerHeight() });
});
</script>
不过最新ios5已经支持了position: fixed,给广大web前端开发者带来了福音。
作者:清流鱼
相关文章
- Firefox/Chrome/Safari的中可直接使用$/$$函数进行调
- javascript判断iphone/android手机横竖屏模式的函数
- 修复IE9&safari 的sort方法
- Safari5中alert的无限循环BUG
- safari,opera嵌入iframe页面cookie读取问题解决方法
- 解决IE下select标签innerHTML插入option的BUG(兼容IE,F
- js 对联广告、漂浮广告封装类(IE,FF,Opera,Safari,Chro
- jQuery一步一步实现跨浏览器的可编辑表格,支持IE、Fire
- 兼容IE/Firefox/Opera/Safari的检测页面装载完毕的脚
- 在IE,Firefox,Safari,Chrome,Opera浏览器上调试javasc
- js查错流程归纳