html5中文学习网

您的位置: 首页 > android » 正文

移动端WebApp隐藏地址栏的方法_Android

[ ] 已经帮助:人解决问题

1、很多资料说,添加以下代码,可以隐藏地址栏,但我试了很多次,貌似不成功啊。nk7HTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
nk7HTML5中文学习网 - HTML5先行者学习网
<meta name="apple-mobile-web-app-capable" content="yes" />nk7HTML5中文学习网 - HTML5先行者学习网
nk7HTML5中文学习网 - HTML5先行者学习网
2、我们可以通过另一种方法来隐藏地址栏。在页面加载完成之后滚动窗口,这个确实有效,唯一要注意的是页面高度必须够高,核心代码如下:nk7HTML5中文学习网 - HTML5先行者学习网
复制代码 代码如下:
nk7HTML5中文学习网 - HTML5先行者学习网
<script type="text/javascript"> nk7HTML5中文学习网 - HTML5先行者学习网
      addEventListener("load", function() { setTimeout(hideURLbar, 0); }, false); nk7HTML5中文学习网 - HTML5先行者学习网
      function hideURLbar(){ nk7HTML5中文学习网 - HTML5先行者学习网
                window.scrollTo(0,1); nk7HTML5中文学习网 - HTML5先行者学习网
      } nk7HTML5中文学习网 - HTML5先行者学习网
</script>nk7HTML5中文学习网 - HTML5先行者学习网
nk7HTML5中文学习网 - HTML5先行者学习网
3、但是当页面高度自适应窗口(height:100%),以上方法就不适用了,我们需要采用特殊方法:nk7HTML5中文学习网 - HTML5先行者学习网
复制代码 代码如下:
nk7HTML5中文学习网 - HTML5先行者学习网
$('div').css("height",window.innerHeight+100);  //强制让内容超过 nk7HTML5中文学习网 - HTML5先行者学习网

window.scrollTo(0, 1); nk7HTML5中文学习网 - HTML5先行者学习网

$("div").css("height",window.innerHeight);  //重置成新高度 nk7HTML5中文学习网 - HTML5先行者学习网

document.addEventListener('touchmove', function (e) { e.preventDefault(); }, false);  //如果不想让页面滑动,可以加上这段代码nk7HTML5中文学习网 - HTML5先行者学习网

nk7HTML5中文学习网 - HTML5先行者学习网

4、分享一下开源项目nk7HTML5中文学习网 - HTML5先行者学习网

移动前端界面进去的时候,我们会看到地址工具条,这看起来不怎么像一个APP,那么怎么隐藏掉这个地址条,下面提供了一个比较合适的代码,支持ios和Android.nk7HTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
nk7HTML5中文学习网 - HTML5先行者学习网
/*! Normalized address bar hiding for iOS & Android (c) @scottjehl MIT License */nk7HTML5中文学习网 - HTML5先行者学习网
(function( win ){nk7HTML5中文学习网 - HTML5先行者学习网
var doc = win.document;nk7HTML5中文学习网 - HTML5先行者学习网

// If there's a hash, or addEventListener is undefined, stop herenk7HTML5中文学习网 - HTML5先行者学习网
if(!win.navigator.standalone && !location.hash && win.addEventListener ){nk7HTML5中文学习网 - HTML5先行者学习网

//scroll to 1nk7HTML5中文学习网 - HTML5先行者学习网
win.scrollTo( 0, 1 );nk7HTML5中文学习网 - HTML5先行者学习网
var scrollTop = 1,nk7HTML5中文学习网 - HTML5先行者学习网
getScrollTop = function(){nk7HTML5中文学习网 - HTML5先行者学习网
return win.pageYOffset || doc.compatMode === "CSS1Compat" && doc.documentElement.scrollTop || doc.body.scrollTop || 0;nk7HTML5中文学习网 - HTML5先行者学习网
},nk7HTML5中文学习网 - HTML5先行者学习网

//reset to 0 on bodyready, if needednk7HTML5中文学习网 - HTML5先行者学习网
bodycheck = setInterval(function(){nk7HTML5中文学习网 - HTML5先行者学习网
if( doc.body ){nk7HTML5中文学习网 - HTML5先行者学习网
clearInterval( bodycheck );nk7HTML5中文学习网 - HTML5先行者学习网
scrollTop = getScrollTop();nk7HTML5中文学习网 - HTML5先行者学习网
win.scrollTo( 0, scrollTop === 1 ? 0 : 1 );nk7HTML5中文学习网 - HTML5先行者学习网
}nk7HTML5中文学习网 - HTML5先行者学习网
}, 15 );nk7HTML5中文学习网 - HTML5先行者学习网

win.addEventListener( "load", function(){nk7HTML5中文学习网 - HTML5先行者学习网
setTimeout(function(){nk7HTML5中文学习网 - HTML5先行者学习网
//at load, if user hasn't scrolled more than 20 or so...nk7HTML5中文学习网 - HTML5先行者学习网
if( getScrollTop() < 20 ){nk7HTML5中文学习网 - HTML5先行者学习网
//reset to hide addr bar at onloadnk7HTML5中文学习网 - HTML5先行者学习网
win.scrollTo( 0, scrollTop === 1 ? 0 : 1 );nk7HTML5中文学习网 - HTML5先行者学习网
}nk7HTML5中文学习网 - HTML5先行者学习网
}, 0);nk7HTML5中文学习网 - HTML5先行者学习网
}, false );nk7HTML5中文学习网 - HTML5先行者学习网
}nk7HTML5中文学习网 - HTML5先行者学习网
})( this );nk7HTML5中文学习网 - HTML5先行者学习网

nk7HTML5中文学习网 - HTML5先行者学习网
详细请访问:https://github.com/scottjehl/Hide-Address-Barnk7HTML5中文学习网 - HTML5先行者学习网

如果你的浏览器支持标签隐藏的话:nk7HTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
nk7HTML5中文学习网 - HTML5先行者学习网
<meta name="apple-mobile-web-app-capable" content="yes" />nk7HTML5中文学习网 - HTML5先行者学习网
nk7HTML5中文学习网 - HTML5先行者学习网

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助