2009-11-11 39 views
2

我拉我的頭髮出過在IE7中,也許所有IE的一個無效的參數錯誤...IE無效的參數錯誤 - 說,這是在jQuery的錯誤,但我不這麼認爲

該網站是:http://www.karencaldwelldesign.com/fashion

IE說它是第12行的錯誤,但如果我打開腳本調試器它說問題是在jQuery中的一些代碼。我不買那個。

所以,我看着我的腳本(http://www.caldwellsnyder.com/__data/assets/js_file/0003/5943/kc-gallery.js)和第65行,似乎是這個問題:

data = '<div id="content'+id+'" class="content">'+data+'</div>'; 

數據從jQuery的$。阿賈克斯()函數返回的,但是,我需要把它包一個額外的編號格。

特別是它是導致無效參數錯誤的id變量,但我不知道爲什麼! var只是一個遞增的數字。從該行刪除var可以讓頁面完美加載,但我真的需要以這種方式增加id。

有沒有人有任何想法爲什麼這個簡單的變量會導致在IE中無效的參數?

+0

'ID = ID + '';'用於遞增ID這並不外表權利 – barkmadley 2009-11-11 05:41:03

+0

對不起,那只是我忘了刪除的測試的一部分。沒有這個錯誤仍然是一個問題。 – 2009-11-11 05:57:29

+0

@Nic:在代碼的一部分中,您將'data'作爲上下文參數傳遞給'$',然後在另一部分中將它與一個字符串連接起來。 「數據」究竟是什麼? – 2009-11-11 08:04:24

回答

2

不知何故,你最後試圖設置一個寬度-5px; IE不喜歡那樣。該值是從JScrollPane.js行$this.css(cssToApply);它得到它從計算變量realPaneWidth未來:

var realPaneWidth = paneWidth - settings.scrollbarWidth - settings.scrollbarMargin - p; 

在這方面,paneWidthsettings.scrollbarWidth都等於676,和settings.scrollbarMargin是5,給你-5( p是零)。

kc-gallery.js你似乎在函數applyScroll中爲scrollbarWidth初始化jScrollPane值爲676。這是從分配給變量check_images的setInterval函數中調用的,並且這需要我們從IE實際出錯的地方將width設置爲-5px的位置備份調用堆棧。

所以這絕對是你使用JScrollPane的方式。你可能想查看文檔中的任何提示 - 我從來沒有使用過這個插件,所以我害怕我無法提供幫助。但是,值爲676的scrollbarWidth似乎有點過分...according to the JScrollPane docs

scrollbarwidth設定 [INT] - 所創建滾動條的以像素爲單位的寬度(默認爲10)

+0

你說得對,這絕對是這裏的問題。但是,我確實需要將滾動條的寬度設置得很寬,因爲我想將整個圖像轉換爲滾動區域,所以單擊下半部分將允許您向下滾動圖像。 – 2009-11-16 00:15:43

+0

如果滾動條很寬,則不會有任何空間顯示圖像。試想一下,如果您將瀏覽器窗口的滾動條設置爲佔用窗口的整個寬度:您將無法看到內容,只是內容應該是非常寬的滾動條。不過,如果你從'scrollbarWidth'傳入的值中減去'settings.scrollbarMargin',那麼你將避免觸發IE錯誤,因爲你將'realPaneWidth'設置爲零。 – NickFitz 2009-11-16 12:33:43

+0

我有一個類似的問題 - 我通過檢查是否動態設置的新寬度實際上是一個數字來解決它:if(!isNaN(emWidth)){} – 2010-11-15 04:34:26

0

當您嘗試將DOM屬性設置爲無效值時,您看到的錯誤來自jQuery。例如,嘗試將z-index設置爲NaN或字符串。 IE瀏覽器錯誤在這個地方,Firefox和其他瀏覽器只是忽略了這個值。

您可以通過刪除以下行到控制檯這個頁面在IE8或使用Jash早期版本的看到這樣一個例子:jQuery("#header").css("z-index", NaN);

它看起來像你的變量glob_index在某些時候變得不確定,從而在嘗試將DOM節點的z-index設置爲此時出現jQuery錯誤。

相關問題