討論:TestAndDebug:Firefox
出自 MozTW Wiki
加強本文件
前言
Wini 20:01 2006年一月14日 (CST)
本文件目前正處於嚴重的內容分歧狀態。(雖然作者只有一名而已,但該作者有精神分裂,所以內容會分歧很正常。(呃))
首先,這文件一開始是有人覺得 Firefox FAQ 實在又臭又長,還不如自己動手慢慢測比較簡單。
不過,隨著收集了越來越多的問題實例後,原本的檢測除錯步驟也越來越長了(其實第一版就已經長到讓人不想看了)。這時就開始有人覺得只要動手做幾個步驟就可以解決問題了,所以就來寫個最速除錯法吧!總之這時倒也還好,只不過是整理一下檢測除錯的精華,並歸納出「怎樣做最有效」的方法讓人照著去做而已。
但是,有人覺得只是教人照著一定的步驟去做卻不說明為何實在太死板了!於是又跑出來了一個 Windows 檢測除錯心法,期待著人人都能變得跟名電腦駭客一樣清楚自己在幹啥。
外加上剛又有人發現到,本頁面所使用的英文「 TestAndDebug:Firefox 」,搞不好會讓人誤以為這兒是在寫關於「編寫 Firefox 程式時的問題」的頁面!(呃)
總之本文件目前正處於嚴重的內容分歧狀態。仔細想想的話,問題的確蠻多的,所以各位對本文件有任何意見時,請多多利用本討論頁面。
順帶一提,個人覺得目前的一個問題,是應該無視作業系統和挑瀏覽器的網頁,專心於 Mozilla Firefox 本身的功能說明,以及官方文件及臭蟲資料的提供。(不過筆者剛好不擅長這兩項)
請在下面敘述你覺得本文件該加強的地方
- 【範例寫法一】這文件又臭又長的,人家不想看。
- 【範例寫法二】你這文件不但解決不了我的問題,還害我買了一堆新電腦,真是爛斃了。 - 未註冊使用者:雞排人 20:01 2006年一月14日 (CST)
- 【範例寫法三】對不起 orz - Wini 20:01 2006年一月14日 (CST)
- 要說明一下 1.5 版後的安全模式,以及找回備份的 bookmarks.html 的位置的方法。 - Wini 03:23 2006年二月3日 (CST)
在換瀏覽器前,先換版本試試
- Firefox 3 停止支援Windows 95、98、ME 和 Mac OS X v10.3.8 以及更低版本的作業系統。
- 免安裝版置於中文路徑下時可能造成視窗炸彈[1]。
- 新版本可能修復bug,2.0.0.14修復了JavaScript 垃圾收集器(Garbage Collector)會崩潰的問題。
- Unix-like作業系統的gcin 與Firefox 3 不相容[2]。
以錯誤主控台協助除錯
- 偶然間被發現的技巧
- 內容節錄如下[3]
: : 原本中鍵可以點開新分頁的,失敗後試著用ctrl加滑鼠左鍵也不能動作… : : 而且前後頁的按鍵都不見了,雖然有滑鼠手勢可以用,但要瀏覽較前幾頁時還是不方便 : : 請問這是不正常現象嗎?@@ : 但在頁面上的連結,點中鍵還是不開分頁(但會被框起來表示按鍵沒失效)。 : 再次檢驗過tmp裡的設定也完全找不出原因。 : 革命尚未成功…。 剛剛才想到要開Error主控台來觀察。 當我在連結上按滑鼠中鍵,或是壓著ctrl配上滑鼠左鍵時,都會出現以下錯誤: 錯誤: event is not defined原始檔: chrome://tabmixplus/content/minit/tablib.js行: 120 所以的確是與tabmixplus有關係… 解開tabmixplus.jar後找到這個檔案開啟以後,從118行到122行的內容為 118 // for Firefox 3.0 119 eval("openNewTabWith ="+openNewTabWith.toString().replace( 120 'if (aEvent && aEvent.shiftKey)', 121 'if (aEvent && (aEvent.button == 1 || aEvent.button == 0 && ( aEvent.ctrlKey || aEvent.metaKey )) && (prefSvc.getBoolPref("extensions.tabmix.inversefocusLinks") || !prefSvc.getBoolPref("extensions.tabmix.inversefocusLinks") && aEvent.shiftKey))' 122 )); 唔…然後…請問這段程式碼有什麼錯誤的地方嗎?囧||
- 內容節錄如下[4]
: 推 Kenqr:移除tmp重裝看看? 06/21 21:22 : → chris:呃…商量一下…停用再重啟可不可以呀?囧|| 一定要重裝嗎? 06/21 21:35 : → chris:請問中鍵開分頁這功能,不裝tmp也是有的嘛?都忘了… 06/21 22:06 : 推 shyangs:可能的話,我會建議你除了重裝,再加上把設定檔砍乾淨XD 06/21 22:06 : → Kenqr:不裝的話是在背景開新分頁 06/21 22:08 : → chris:謝謝兩位的幫忙,總算找出原因了,不是tmp造成的!! 06/21 22:13 在聽從建議停用後繼續觀察錯誤主控台,這回的訊息是: 錯誤: event is not defined 原始檔: file:///C:/Documents%20and%20Settings/Chris/My%20Documents/Firefox/Chris/extensions/%7B1280606b-2510-4fe0-97ef-9b5a22eafe64%7D/components/userChrome_js.js -> file:///C:/Documents%20and%20Settings/Chris/My%20Documents/Firefox/Chris/chrome/userChrome.js 行: 12 這時好窘…… 因為我曾在 userChrome.js 依照忘了哪個網頁的教學,添增了以下的程式碼: (function() { //公用函式 function hookCode(orgFunc, orgCode, myCode) { eval(orgFunc + "=" + eval(orgFunc).toString().replace(orgCode, myCode)); } //巴哈姆特外部鏈結用中鍵點擊可直接開啟 hookCode("openNewTabWith", /{/, "{" + ( function() { if (event && event.button == 1) { var m = href.match(/^javascript:(top\.)?confirmLink\(\s*(\x22|\x27)(.*)(\x22|\x27)\s*\)$/); if (m) href = unescape(m[3]); } } ).toString().replace(/^.*{/,"").replace(/.*}$/,"")); })(); 而凶手就是這一段………  ̄▽ ̄|||||| 不知前面有位同病相憐的板友(抱歉忘了是哪篇文章裡的推文…)狀況是否相同… 若不是這個原因的話,也可以試著用錯誤主控台一步步trace喔!好玩耶!XD 再次感謝所有給過意見的板友們!!!
- 恩~這應該也算一種套件相衝?