最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

移動(dòng)端網(wǎng)頁開發(fā)調(diào)試神器Eruda的介紹與使用技巧

 更新時(shí)間:2017年10月30日 09:48:20   作者:dunizb  
在日常的移動(dòng)端開發(fā)時(shí),一般都是試用chrome瀏覽器的移動(dòng)端模式進(jìn)行開發(fā)和調(diào)試,只有在chrome調(diào)試完成,而最近發(fā)現(xiàn)了一個(gè)新的調(diào)試方法,所以這篇文章主要給大家介紹了關(guān)于移動(dòng)端網(wǎng)頁開發(fā)調(diào)試神器Eruda的基本資料,以及其使用的一些技巧,需要的朋友可以參考下。

前言

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

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

Eruda是誰?

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

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

詳細(xì)介紹可以戳這里產(chǎn)看,我就不贅述了

使用技巧

這才是本文重點(diǎn)。Eruda的基本使用方法推薦使用CDN和可配置參數(shù)的形式,在頁面引入如下代碼:

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

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

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

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

;(function () {
 if (!/eruda=true/.test(window.location) || sessionStorage.getItem('eruda') !== 'true') return;
 var src = '//cdn.bootcss.com/eruda/1.2.4/eruda.min.js';
 document.write('<scr' + 'ipt src="' + src + '"></scr' + 'ipt>');
 document.write('<scr' + 'ipt>eruda.init();</scr' + 'ipt>');
})();

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

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

例子:假如有這樣的一個(gè)頁面,里有一個(gè)標(biāo)題文字

<h2>——規(guī)則詳情——</h2>
<div>
.....
</div>

那么我們可以在h2標(biāo)簽上綁定一個(gè)click事件,加入方法名叫showEruda

<h2 onclick="showEruda">——規(guī)則詳情——</h2>
<div>
.....
</div>

<script>
var count = 0;
function showEruda () {
 if (count >= 10) { 
 var erdua = sessionStorage.getItem('erdua');
 if (!erdua || erdua === 'false'){
  sessionStorage.setItem('eruda', 'true')
 } else {
  sessionStorage.setItem('eruda', 'false')
 }
 location.reload()
 }
 count++
}
</script>

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

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

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • JavaScript中解決變量名沖突的方法詳解

    JavaScript中解決變量名沖突的方法詳解

    在?JavaScript?中,當(dāng)代碼中出現(xiàn)多個(gè)相同的變量名時(shí),JavaScript?引擎將根據(jù)?作用域鏈和?變量提升的規(guī)則來決定使用哪個(gè)變量,以下是詳細(xì)的解析,需要的朋友可以參考下
    2025-02-02
  • javascript中檢測變量的類型的代碼

    javascript中檢測變量的類型的代碼

    javascript對于變量的定義、類型的要求都比較松散,這樣既方便,但又容易犯錯(cuò)。有時(shí)候進(jìn)行必要的類型檢查是必須的。
    2010-12-12
  • 深入探討TypeScript中類與接口的使用

    深入探討TypeScript中類與接口的使用

    TypeScript是一種強(qiáng)大的編程語言,它在JavaScript的基礎(chǔ)上添加了靜態(tài)類型檢查,使得代碼更加可維護(hù)和類型安全,在TypeScript中,類和接口是構(gòu)建復(fù)雜應(yīng)用程序的關(guān)鍵組成部分,本文將深入探討TypeScript中類與接口的使用,需要的朋友可以參考下
    2023-09-09
  • javascript解析json格式的數(shù)據(jù)方法詳解

    javascript解析json格式的數(shù)據(jù)方法詳解

    這篇文章主要介紹了javascript解析json格式的數(shù)據(jù)方法詳解,文章通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • 分享XmlHttpRequest調(diào)用Webservice的一點(diǎn)心得

    分享XmlHttpRequest調(diào)用Webservice的一點(diǎn)心得

    因?yàn)轫?xiàng)目需要,以后前端、手機(jī)客戶端調(diào)用ASP.NET的Webservice來獲取信息.所以這段時(shí)間開始看Webservice,試著通過XmlHttpRequest調(diào)用Webservice,過程中碰到不少問題,也有不少的收獲
    2012-07-07
  • JavaScript之瀏覽器對象_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    JavaScript之瀏覽器對象_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    JavaScript可以獲取瀏覽器提供的很多對象,并進(jìn)行操作。下面通過本文給大家介紹JavaScript之瀏覽器對象的相關(guān)知識,一起看看吧
    2017-07-07
  • Webpack?ECMAScript?模塊詳解

    Webpack?ECMAScript?模塊詳解

    ECMAScript 模塊(ESM)是在 Web 中使用模塊的規(guī)范, 所有現(xiàn)代瀏覽器均支持此功能,同時(shí)也是在 Web 中編寫模塊化代碼的推薦方式,這篇文章主要介紹了Webpack?ECMAScript?模塊,需要的朋友可以參考下
    2023-12-12
  • 在一個(gè)頁面重復(fù)使用一個(gè)js函數(shù)的方法詳解

    在一個(gè)頁面重復(fù)使用一個(gè)js函數(shù)的方法詳解

    下面小編就為大家?guī)硪黄谝粋€(gè)頁面重復(fù)使用一個(gè)js函數(shù)的方法詳解。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧,祝大家游戲愉快哦
    2016-12-12
  • JavaScript實(shí)現(xiàn)微信紅包算法及問題解決方法

    JavaScript實(shí)現(xiàn)微信紅包算法及問題解決方法

    這篇文章主要介紹了JavaScript實(shí)現(xiàn)微信紅包算法及遇到的問題解決方法,需要的朋友可以參考下
    2018-04-04
  • javascript實(shí)現(xiàn)圣旨卷軸展開效果(代碼分享)

    javascript實(shí)現(xiàn)圣旨卷軸展開效果(代碼分享)

    本文主要介紹了javascript實(shí)現(xiàn)圣旨卷軸展開效果的示例代碼。具有很好的參考價(jià)值。下面跟著小編一起來看下吧
    2017-03-03

最新評論

朝阳区| 内乡县| 曲靖市| 宿州市| 北川| 河北区| 伊宁市| 周至县| 浙江省| 平武县| 安新县| 宿州市| 兴业县| 泗阳县| 聂拉木县| 金溪县| 永川市| 宿松县| 临沭县| 宁蒗| 共和县| 合江县| 大方县| 社会| 江安县| 阳高县| 南部县| 天水市| 香河县| 会同县| 鹤山市| 扶沟县| 远安县| 修水县| 象山县| 丰都县| 衡山县| 康马县| 嘉义市| 绥德县| 酉阳|