微信H5頁面兼容性問題分析及解決方法-創(chuàng)新互聯(lián)

這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)微信H5頁面兼容性問題分析及解決方法,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

成都創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:做網(wǎng)站、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的豐潤網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

隨著H5頁面越來越流行,越來越多的開發(fā)者都開始用最近H5做微信公眾號,在這個過程中自然也會遇到不少的問題。小編在這里整理了五種常見的微信H5頁面兼容性問題,來和大家分析一下問題的詳情、出現(xiàn)原因以及相對應(yīng)的解決方法。有相關(guān)問題的小伙伴,就一起來看看吧!

1、ios端兼容input光標(biāo)高度

問題詳情描述:input輸入框光標(biāo),在安卓手機上顯示沒有問題,但是在蘋果手機上當(dāng)點擊輸入的時候,光標(biāo)的高度和父盒子的高度一樣。

出現(xiàn)原因分析:通常我們習(xí)慣用height屬性設(shè)置行間的高度和line-height屬性設(shè)置行間的距離(行高),當(dāng)點擊輸入的時候,光標(biāo)的高度就自動和父盒子的高度一樣了。(谷歌瀏覽器的設(shè)計原則,還有一種可能就是當(dāng)沒有內(nèi)容的時候光標(biāo)的高度等于input的line-height的值,當(dāng)有內(nèi)容時,光標(biāo)從input的頂端到文字的底部。

解決辦法:高度height和行高line-height內(nèi)容用padding撐開。

例如:

.content{

float: left;

box-sizing: border-box;

height: 88px;

width: calc(100% - 240px);

.content-input{

display: block;

box-sizing: border-box;

width: 100%;

color: #333333;

font-size: 28px;

//line-height: 88px;

padding-top: 20px;

padding-bottom: 20px;

}

}

2、Vue中路由使用hash模式,開發(fā)微信H5頁面分享時在安卓上設(shè)置分享成功,但是ios的分享異常。

問題詳情描述:

ios當(dāng)前頁面分享給好友,點擊進來是正常,如果二次分享,則跳轉(zhuǎn)到首頁;使用vue router跳轉(zhuǎn)到第二個頁面后在分享時,分享設(shè)置失敗;以上安卓分享都是正常。

出現(xiàn)原因分析:jssdk是后端進行簽署,前端校驗,但是有時跨域,ios是分享以后會自動帶上from=singlemessage&isappinstalled=0 以及其他參數(shù),分享朋友圈參數(shù)還不一樣,貌似系統(tǒng)不一樣參數(shù)也不一樣,但是每次獲取url并不能獲取后面這些參數(shù)

解決辦法:

(1)可以使用改頁面this.$router.push跳轉(zhuǎn),為window.location.href去跳轉(zhuǎn),而不使用路由跳轉(zhuǎn),這樣可以使地址欄的地址與當(dāng)前頁的地址一樣,可以分享成功(適合分享的頁面不多的情況下,作為一個單單頁運用,這樣刷新頁面跳轉(zhuǎn),還是..)

(2)把入口地址保存在本地,等需要獲取簽名的時候 取出來,注意:sessionStorage.setItem(‘href’,href); 只在剛進入單應(yīng)用的時候保存!

3、ios端微信h6頁面上下滑動時卡頓、頁面缺失。

問題詳情描述:在ios端,上下滑動頁面時,如果頁面高度超出了一屏,就會出現(xiàn)明顯的卡頓,頁面有部分內(nèi)容顯示不全的情況。

出現(xiàn)原因分析:

籠統(tǒng)說微信瀏覽器的內(nèi)核,Android上面是使用自帶的WebKit內(nèi)核,iOS里面由于蘋果的原因,使用了自帶的Safari內(nèi)核,Safari對于overflow-scrolling用了原生控件來實現(xiàn)。對于有-webkit-overflow-scrolling的網(wǎng)頁,會創(chuàng)建一個UIScrollView,提供子layer給渲染模塊使用?!居写甲C】

解決辦法:只需要在公共樣式加入下面這行代碼

*{

-webkit-overflow-scrolling: touch;

}

4、ios鍵盤喚起,鍵盤收起以后頁面不歸位

問題詳情描述:

輸入內(nèi)容,軟鍵盤彈出,頁面內(nèi)容整體上移,但是鍵盤收起,頁面內(nèi)容不下滑。

出現(xiàn)原因分析:

固定定位的元素 在元素內(nèi) input 框聚焦的時候 彈出的軟鍵盤占位 失去焦點的時候軟鍵盤消失 但是還是占位的 導(dǎo)致input框不能再次輸入 在失去焦點的時候給一個事件。

解決辦法:

<div class="list-warp">

<div class="title"><span>投&middot;被保險人姓名</span></div>

<div class="content">

<input class="content-input"

placeholder="請輸入姓名"

v-model="peopleList.name"

@focus="changefocus()"

@blur.prevent="changeBlur()"/>

</div>

</div>

changeBlur(){

let u = navigator.userAgent, app = navigator.appVersion;

let isIOS = !!u.match(/(i[^;]+;( U;)? CPU.+Mac OS X/);

if(isIOS){

setTimeout(() => {

const scrollHeight = document.documentElement.scrollTop || document.body.scrollTop || 0

wind

ow.scrollTo(0, Math.max(scrollHeight - 1, 0))

}, 200)

}

}

5、安卓彈出的鍵盤遮蓋文本框

問題詳情描述:

安卓微信H5彈出軟鍵盤后擋住input輸入框。

解決辦法:給input和textarea標(biāo)簽添加focus事件,如下,先判斷是不是安卓手機下的操作,當(dāng)然,可以不用判斷機型,Document 對象屬性和方法,setTimeout延時0.5秒,因為調(diào)用安卓鍵盤有一點遲鈍,導(dǎo)致如果不延時處理的話,滾動就失效了

changefocus(){

let u = navigator.userAgent, app = navigator.appVersion;

let isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1;

if(isAndroid){

setTimeout(function() {

document.activeElement.scrollIntoViewIfNeeded();

document.activeElement.scrollIntoView();

}, 500);

}

}

上述就是小編為大家分享的微信H5頁面兼容性問題分析及解決方法了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司行業(yè)資訊頻道。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

標(biāo)題名稱:微信H5頁面兼容性問題分析及解決方法-創(chuàng)新互聯(lián)
文章URL:http://muchs.cn/article40/cshsho.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、關(guān)鍵詞優(yōu)化做網(wǎng)站、網(wǎng)站導(dǎo)航App開發(fā)、網(wǎng)站維護

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作