iOS之Safari調試webView/H5頁面


之前做過混合開發,用的是JavaScriptCore+OC+UIWebView。

Safari調試功能真的很有用,通過它可以輕松定位問題的所在,下面說說怎么調試.

開啟Safari開發菜單

在Mac的Safari偏好設置中,開啟開發菜單。具體步驟為:Safari -> 偏好設置… -> 高級 -> 勾選在菜單欄顯示“開發”菜單。

 

 

iPhone開啟Web檢查器

具體步驟為:設置 -> Safari -> 高級 -> Web 檢查器。

 

 

運行App

打開項目,Cmd + R 運行,打開想調試的Web頁面。

 

 

調試對應的頁面

打開Safari -> 開發 -> 設備 -> URL。

 

選中的頁面會變成藍色,點擊然后打開了如下的界面。

 

這個頁面就很像Windows 平台ChromeF12。可以打斷點:

 

查看斷點

 

 

查看Cookie

 

打印Cookie或者元素

 

 

比如在這里Alert頁面的title,輸入 alert(document.title);,你會在模擬器中看到彈窗

 

 

整體十分有用,操作的體驗跟Xcode很像,小伙伴們自行探索。

 

比如新做的h5頁面中,有一個分享按鈕,點擊調用原生的分享,但是發現,點擊之后沒有反應了,什么問題呢?是Native端實現有問題,還是前端寫的有問題呢?如圖

 

我們來幫忙看下吧,打開Safari Web 檢查器,定位到資源,並且在share方法中添加斷點,如圖

 

會發現,並沒有斷住,而是頁面直接報錯了,仔細查看錯誤描述,share方法里多了一個“/”,因此報錯了。當我點擊分享按鈕時

 

 

會發現,提示找不到變量share。這里我需要說明一下:

當js中報錯的時候,報錯位置所在的函數以及報錯位置之后的代碼,都不會執行,所以我點擊分享時,提示的是找不到方法,因為js的語法不對,報錯了,這里解析不出來,所以也就沒有了sharetestAddMethod和之后的函數。

那么當我點擊分享下面的按鈕是,調用share下面定義的方法也就會提示找不到對應的函數了。

 

 

至此,問題找到了,只要告之前端開發人員即可,讓他修復即可。

實際遇到的問題可能要復雜的多,可以通過斷點,以及控制台打印一些js變量的值,DOM操作來尋找問題,解決問題。希望可以幫助到小伙伴們。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM