移動端WebApp隱藏地址欄的方法_Android

來源:互聯網
上載者:User

1、很多資料說,添加以下代碼,可以隱藏地址欄,但我試了很多次,貌似不成功啊。

複製代碼 代碼如下:

<meta name="apple-mobile-web-app-capable" content="yes" />

2、我們可以通過另一種方法來隱藏地址欄。在頁面載入完成之後滾動視窗,這個確實有效,唯一要注意的是頁面高度必須夠高,核心代碼如下:
複製代碼 代碼如下:

<script type="text/javascript">
      addEventListener("load", function() { setTimeout(hideURLbar, 0); }, false);
      function hideURLbar(){
                window.scrollTo(0,1);
      }
</script>

3、但是當頁面高度自適應視窗(height:100%),以上方法就不適用了,我們需要採用特殊方法:
複製代碼 代碼如下:

$('div').css("height",window.innerHeight+100);  //強制讓內容超過 

window.scrollTo(0, 1); 

$("div").css("height",window.innerHeight);  //重設成新高度 

document.addEventListener('touchmove', function (e) { e.preventDefault(); }, false);  //如果不想讓頁面滑動,可以加上這段代碼

4、分享一下開源項目

移動前端介面進去的時候,我們會看到地址工具條,這看起來不怎麼像一個APP,那麼怎麼隱藏掉這個地址條,下面提供了一個比較合適的代碼,支援ios和Android.

複製代碼 代碼如下:

/*! Normalized address bar hiding for iOS & Android (c) @scottjehl MIT License */
(function( win ){
var doc = win.document;

// If there's a hash, or addEventListener is undefined, stop here
if(!win.navigator.standalone && !location.hash && win.addEventListener ){

//scroll to 1
win.scrollTo( 0, 1 );
var scrollTop = 1,
getScrollTop = function(){
return win.pageYOffset || doc.compatMode === "CSS1Compat" && doc.documentElement.scrollTop || doc.body.scrollTop || 0;
},

//reset to 0 on bodyready, if needed
bodycheck = setInterval(function(){
if( doc.body ){
clearInterval( bodycheck );
scrollTop = getScrollTop();
win.scrollTo( 0, scrollTop === 1 ? 0 : 1 );
}
}, 15 );

win.addEventListener( "load", function(){
setTimeout(function(){
//at load, if user hasn't scrolled more than 20 or so...
if( getScrollTop() < 20 ){
//reset to hide addr bar at onload
win.scrollTo( 0, scrollTop === 1 ? 0 : 1 );
}
}, 0);
}, false );
}
})( this );


詳細請訪問:https://github.com/scottjehl/Hide-Address-Bar

如果你的瀏覽器支援標籤隱藏的話:

複製代碼 代碼如下:

<meta name="apple-mobile-web-app-capable" content="yes" />

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.