自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

移動網(wǎng)頁調(diào)試神器Erdua使用技巧

移動開發(fā)
如果你不知道怎么在移動端調(diào)試網(wǎng)頁,那么本篇文章對你很有幫助,如果你是vConsole的用戶,那么你也可嘗試一下Erdua,如果你是移動端網(wǎng)頁開發(fā)骨灰級玩家,那么可以選擇低調(diào)的忽略本文。

做移動端Web開發(fā)的一大痛點就是,在真機運行下無法查看console.log日志和其他信息如網(wǎng)絡(luò)請求、顯示本地存儲等信息。如果網(wǎng)頁是運行在手機瀏覽器中還算好,可以把網(wǎng)址在電腦上打開查看console信息,但是如果是做APP的內(nèi)嵌H5頁面,那就只能靠開發(fā)階段在瀏覽器模擬環(huán)境中盡量沒有Bug,但是,一旦H5上線后報錯那就比較麻煩了,而且還依賴APP環(huán)境才能跑的網(wǎng)頁,更加難以查找問題。如果讓移動端也擁有類似Chrome DevTools工具那豈不是很愉快么?

[[206554]]

vConsole便是這樣一款很棒的移動端DevTools工具,由大廠企鵝出品。但本文把他定位為男二號,今天的主角男一號是: Erdua !vConsole的同類。如果你不知道怎么在移動端調(diào)試網(wǎng)頁,那么本篇文章對你很有幫助,如果你是vConsole的用戶,那么你也可嘗試一下Erdua,如果你是移動端網(wǎng)頁開發(fā)骨灰級玩家,那么可以選擇低調(diào)的忽略本文。

Erdua是誰?

大家好,給大家介紹一下,這是我的…..。Eruda 是一個專為手機網(wǎng)頁前端設(shè)計的調(diào)試面板,類似 DevTools 的迷你版,其主要功能包括:捕獲 console 日志、檢查元素狀態(tài)、顯示性能指標、捕獲XHR請求、顯示本地存儲和 Cookie 信息、瀏覽器特性檢測等等。

GitHub地址為: https://github.com/liriliri/eruda ,顏值和技能都很棒的Erdua:

移動網(wǎng)頁調(diào)試神器Erdua使用技巧

使用技巧

這才是本文重點。

Erdua的基本使用方法推薦使用CDN和可配置參數(shù)的形式,在頁面引入如下代碼:

 

  1. ;(function (){ 
  2.     var src = '//cdn.bootcss.com/eruda/1.2.4/eruda.min.js'
  3.     if (!/eruda=true/.test(window.location) && localStorage.getItem('active-eruda') != 'true'return
  4.     document.write('<scr' + 'ipt src="' + src + '"></scr' + 'ipt>'); 
  5.     document.write('<scr' + 'ipt>eruda.init();</scr' + 'ipt>'); 
  6. })(); 

eruda.init(); 里面可以傳入要初始化哪些面板,默認加載所有。

這樣使用方式?jīng)]有錯,但是如果Erdua要跟著發(fā)布到線上的話,那我們要刪除這段代碼?因為這樣會不管你需不需要調(diào)試Erdua都會立即加載,在頁面出現(xiàn)Erdua的圖標。我的目標是,Erdua可以保留在頁面里,無論什么環(huán)境,只要我們想呼喚它出現(xiàn)的時候它才出現(xiàn),不需要它的時候它只是一段不會生效的普通代碼。

我想到的辦法是:首先把上述引入代碼的 src 放到 if 里,同時把 localStorage 改為 sessionStorage , active-eruda 參數(shù)也可以改個更短的名字,改后的代碼如下:

 

  1. ;(function (){  
  2. if (!/eruda=true/.test(window.location) || sessionStorage.getItem('eruda') != '0'return 
  3. var src = '//cdn.bootcss.com/eruda/1.2.4/eruda.min.js' 
  4. document.write('  
  5. document.write('  
  6. })(); 

這段代碼的意思是如果URL中有參數(shù) eruda=true 或者sessionStorage中 eruda 的值大于0才加載Erdua。這樣的好處是,我們需要調(diào)試的時候可以在網(wǎng)頁URL后面加個參數(shù)即可,不需要調(diào)試的它不會加載。

然而,這在開發(fā)階段可以這樣做比較好,但是在線上環(huán)境可能要加URL參數(shù)比較麻煩。于是我想到了在頁面中點擊某個元素10次再加載Erdua,點擊10次或者更多次,然后在sessionStorage中寫入 eruda=yes ,然后刷新當前頁。相反,再點擊10次關(guān)閉Erdua。用這樣比較隱藏的方式開啟或關(guān)閉Erdua,這樣線上環(huán)境也可以自由開啟或關(guān)閉Erdua了。

例子:假如有這樣的一個頁面,里有一個標題文字

 

  1. <h2>——規(guī)則詳情——</h2> 
  2. <div> 
  3. ..... 
  4. </div> 

那么我們可以在 h2 標簽上綁定一個 click 事件,加入方法名叫 showErdua

 

  1. <h2onclick="showErdua">——規(guī)則詳情——</h2> 
  2. <div> 
  3. ..... 
  4. </div> 
  5.  
  6. <script> 
  7. var count = 0; 
  8. function showErdua(){ 
  9.     if (count >= 10) {     
  10.         var erdua = sessionStorage.getItem('erdua'); 
  11.         if (!erdua || erdua === 'no'){ 
  12.             sessionStorage.setItem('eruda''yes'
  13.         } else { 
  14.             sessionStorage.setItem('eruda''no'
  15.         } 
  16.         location.reload() 
  17.     } 
  18.     count++ 
  19. </script> 

這樣點擊規(guī)則詳情10次就可以喚起Erdua了,再點擊10次就關(guān)閉Erdua了,反正我覺得這樣挺好的。

不知道大家都是怎么用的呢?

責任編輯:未麗燕 來源: Dunizb
相關(guān)推薦

2012-07-10 15:51:01

移動網(wǎng)頁設(shè)計移動Web

2011-02-25 14:04:20

2013-08-27 13:13:29

移動網(wǎng)站性能優(yōu)化移動web

2012-03-09 09:21:41

Shadow

2011-02-22 11:37:23

MWC應(yīng)用程序

2012-03-15 10:04:06

移動web

2014-05-04 11:06:41

移動網(wǎng)站移動設(shè)計

2023-07-18 07:51:56

JavaScriptAPI

2023-03-07 10:44:05

前端JS 調(diào)試

2014-04-22 22:16:11

銳捷網(wǎng)絡(luò)移動網(wǎng)絡(luò)

2011-05-12 17:26:40

移動網(wǎng)站CSS

2017-07-21 16:26:43

2011-03-31 11:15:52

網(wǎng)頁設(shè)計Web

2014-10-29 11:21:00

移動網(wǎng)絡(luò)Wi-Fi

2013-01-11 15:57:07

移動網(wǎng)絡(luò)運營商生活平臺

2011-05-12 17:13:06

移動網(wǎng)站標記語言

2013-08-29 10:50:48

移動網(wǎng)站性能優(yōu)化移動web

2013-09-03 10:16:00

網(wǎng)頁設(shè)計透明效果

2011-03-26 23:14:56

RIM黑莓BlackBerry

2011-11-02 11:06:50

點贊
收藏

51CTO技術(shù)棧公眾號