2012-09-29 125 views
1

我試圖將此代碼用於導航欄,但是未捕獲的語法錯誤:意外的令牌非法的

a。它不工作 b。我收到谷歌瀏覽器中的警告(未捕獲的SyntaxError:意外的令牌非法)

這一切工作完美的Jsfiddle和網站我在製作中是非常基本的,沒有其他的JavaScript在頁面上,所以我不'沒有看到問題。

我已經嘗試從頭部,身體加載代碼,也引用它作爲外部js文件,但沒有運氣與任何一個。

這裏是鏈接到的jsfiddle:http://jsfiddle.net/zegermens/9hYey/

如果有人可以幫助我這個代碼或解釋爲什麼它不會在本地主機上進行工作,將是驚人的。

+0

自從jsfiddle工作以來,發佈您的網站代碼。你在某處有一個語法錯誤。 – nneonneo

+0

Chrome在哪一行看到意外的令牌?並且請將您的代碼與問題一起發佈,而不是在異地(儘管額外的演示從不壞)。 – Bergi

+0

從jsFiddle複製往往會引入不可見的「非法」字符,尤其是在代碼的末尾。 – pimvdb

回答

2

我有過去這個問題/錯誤,這是由於沒有和結束;分號。

特別是當我在一個文件中加載多個jQuery庫或javascript對象時。

例如:

(function ($) { 
    // Class 1 
})(window.jQuery); // <- this is missing 

(function ($) { 
    // Class 2 
})(window.jQuery) 

如果沒有分號類試圖打電話給對方。像這樣...})(window.jQuery)(function...

檢查您的文件以找到可能丟失的所需分號。

+1

這些類不合並在一起,它們試圖互相調用,因爲'()'技術上是一個函數調用。一些/大多數庫是聰明的,並且在其代碼的頂部放置一個';',以確保它在它之前終止任何打開的代碼。我想在他們的代碼之後放一個也是很好的。 – Ian

+0

對不起,我的意思是合併,因爲他們並排在一起。我會解決這個問題。謝謝 – brenjt

+0

我前幾天遇到類似的問題,當我寫'(foo && bar)||(foo && bar)||時,我寫了'(foo && bar)(baz && quux)'。 (baz && quux)''。我無法弄清楚它爲什麼不是語法錯誤,這是因爲它是有效的函數調用語法。這是使用動態類型語言的錯誤特徵之一。 – Barmar

相關問題