App下載

如何解決HTML5 API中plusready兼容問題?解決方法案例詳解!

猿友 2021-08-05 10:59:37 瀏覽數(shù) (3308)
反饋

對于前端接口的使用對于有接觸過前端的小伙伴們相信在熟悉不過了,那么今天我們就來講講有關于:“如何解決HTML5 API中plusready兼容問題?”這個問題吧!下面是相關的收集內容!

Android平臺提前注入5+ API,支持在plusready事件前調用

在5+ Runtime環(huán)境中,通常情況下需要html頁面解析完成后才會注入5+ API,執(zhí)行的順序為:

1. 加載html頁面

2. 解析html頁面(下載script/link等節(jié)點引用的資源,如js/css文件)

3. 觸發(fā)DOMContentLoaded事件

4. 注入5+ API

5. 觸發(fā)plusready事件

這樣導致5+ API生效時間比較延后,在html中引用js執(zhí)行之后才能調用5+ API,通常采用以下代碼調用5+ API:'

document.addEventListener('plusready',function () { 
        // 在這里調用5+ API 
        // 如獲取設備唯一標識 plus.device.uuid
},false); 

但是在新版本中,將支持提前注入5+ API,可以在plusready事件觸發(fā)之前調用5+ API,提前引入節(jié)點:

<script src="html5plus://ready"></script>

兼容寫法:

if(window.plus){ 
    // 在這里調用5+ API 
}else{// 兼容老版本的plusready事件 
    document.addEventListener('plusready',function () { 
        // 在這里調用5+ API 
    },false); 
}

注意
1. 僅僅是提前注入5+ API,并不會提前觸發(fā)plusready事件(僅步驟4提前操作了)
2. Android3.0及以上平臺才支持提前注入,Android2.*版本無法提前注入
3. 在流應用環(huán)境中的wap2app會自動提前注入(第一次引用網絡js時注入),不需要添加<script src="html5plus://ready"/>節(jié)點

以上就是有關于:“如何解決HTML5 API中plusready兼容問題?”這個問題的相關方法分享,更多關于HTML5這方面的相關內容我們可以在W3Cschool中進行學習和了解! 

0 人點贊