2011-08-19 142 views
4

好吧我已經在這裏看到過這個問題,但這一切都沒有解決我的問題。這裏是我們正在談論的網站:http://kwestievan.nl/unityexpress在IE8中jQuery「異常拋出並未捕獲」錯誤

在IE7/8中打開,不介意任何可能存在的CSS錯誤。

如果我看看控制檯,在jquery.js(1.6.2)的第1011行看到「Exception thrown and not caught」。我認爲這與jQuery無關,但使用我自己的代碼,但我不知道從哪裏開始。我可能會在代碼中做錯誤的事,但控制檯根本沒有提示。所有其他瀏覽器與代碼沒有問題,因爲它現在是。

有人可以幫我嗎?

+0

你的代碼中是否有'throw/catch'語句? – Alex

+0

我沒有收到IE8中的錯誤。如果你在ie8中打F12,它會給你一個類似於螢火蟲的調試控制檯。 –

+0

@ kmb385這很有趣。做導航,頂部的傳送帶和語言切換工作嗎?或者它仍然會給某種錯誤? – Coen

回答

0

您應該在「Internet選項」中啓用JavaScript調試。或者在你的IE開發工具中。該代碼應該在給你提供問題的線路上「中斷」,然後你可以檢查調用堆棧以查看哪些代碼觸發了問題。

+0

我已經在使用開發人員工具(F12),我看腳本選項卡,然後在右側「安慰」。我看到選項卡「Call Stack」,但列表是空的。所以在那裏沒有任何事情要做。我在錯誤的地方? – Coen

+0

調用堆棧通常在代碼中斷時填充。調試必須啓用。 – Jacob

+0

是的,我做到了,謝謝。但是堆棧追溯到ready()事件,當加載dom和jQuery可以開始時會觸發事件。所以沒有來自我的結局,或者看起來如此。我使用'jQuery(document).ready(function($){});'在noConflict模式下可以使用'$'的技巧。這是否會導致IE嘔吐? – Coen

3

我有一個類似的問題,在IE8中使用jQuery 1.6.4在IE8中(當在IE7模式下)看到「Exception thrown and not caught」錯誤。

堆棧跟蹤finally子句中開始在jQuery的resolveWith(),並通過準備()和doScrollCheck()去了,但問題是在我的代碼,通過$。就緒()執行。

我在我的代碼中發現了這個問題,它實際上是一個「對象不支持這個屬性或方法」的錯誤,只能通過註釋掉代碼,直到我找到有問題的行,然後在控制檯中運行該行。

我認爲jQuery的resolveWith()中的try {} finally {}塊可能掩蓋了錯誤的來源。我不確定,但如果我不得不再次調試,我可能會嘗試:

  • 將我的代碼移到$ .ready()之外;或
  • jQuery中的本地副本,添加在resolveWith)一catch (e){}條款(來檢查錯誤
1

我只是在IE的jQuery UI選項卡只(第8版)同樣的錯誤。事實證明,我使用了FF和Chrome給我的無效HTML。與IE不同。

我通過運行指向HTML錯誤的HTML驗證程序(我對DIV ID有額外的引用)發現了這一點。我修復了這個錯誤,並且在IE中js錯誤信息消失了。

0

感謝您的提示。我通過刪除似乎扼殺IE8的「:nth-​​of-type()」jQuery選擇器來解決此問題。

相關問題