微信h5開發的坑

記一次微信h5開發的坑。。。css

正常的效果以下:瀏覽器


自己用的cube-ui開發,上半部分是本身寫的,下邊用的是better-scroll,爲了滑動更流暢。這個頁面前邊有一個登陸頁面,登陸以後就會跳到這個首頁。
bash

在安卓和瀏覽器上,乃至微信開發者工具都是沒有問題的,可是在iPhone上竟然就是這個鬼樣子。神奇的是,刷新一下就行了,而後再次進來這個頁面就沒有問題。微信

下邊是bug展現效果:微信開發


在能夠調試的地方復現不了bug真的是很頭疼的一件事,查找緣由就只能靠猜了。ide

若是 大家有什麼好的方法能夠實現微信h5頁面真機調試的方法,麻煩告知我,跪謝~!)工具

猜想一:ui

因爲下邊的返回白條把上邊的頁面擠上去了。而後開始查找晚上的資料,網上資料大概有兩類:spa

  1. 直接簡單粗暴

    window.WeixinJSBridge.call('hideToolBar')複製代碼

    這個方法通過個人驗證,無效,正好在此闢謠一下。
  2. 白條是由於有歷史記錄才生成的,那麼就避免產生歷史記錄就行了:能夠全部的頁面跳轉都用replace代替


當我用第二種方法實現了隱藏白條的功能時,興高采烈的趕忙登陸,可是失落的是,紅色按鈕下垂了,可是上邊還在擠上去了。調試

好吧,我就當學會一個隱藏白條的方法吧~

開始有點摸不着頭緒。

  • 再次猜想是否是由於window.clientHeight和window.scrollHeight這些高度渲染時候獲取的高度不對的問題,可是alert的時候發現,倆者是相同的
  • 可是開心的是發現了登陸頁面和其餘正常頁面的告訴不同,多了一個導航的高度。
  • 以後覺得是個人css寫的不規範,不該該啊。把因此可能的試了,也不是這個問題。

可是經過反覆看看那個頁面,忽然有一次輸入完密碼,關閉軟鍵盤以後發現登陸頁面底部有個灰色的條,而後向下滑一下頁面再次登陸,頁面就沒有問題了

而後就有了

猜測二:

多是被軟鍵盤把頁面擠上去了,由於以前也有遇到過軟鍵盤的問題。

這時候去萬能的百度一搜,果然有這樣的問題:軟鍵盤會把頁面擠上去,而且不會本身回來,因此須要手動拉下來,因此在頁面跳轉以前執行

window.scroll(0,0)複製代碼

懷着激動的心情,打開頁面,終於實現了~!開心

終於能夠下班了~!

此外還有一個問題,iPhone微信端的localStorage有沒有什麼清裏的辦法?求各位大神指教~~!

相關文章
相關標籤/搜索