2011-03-08 43 views
0

可能是一個快速爲你的jQuery專家。我寫了我自己的動畫/彈出腳本。但是當它進入我的頁面時,出現錯誤 -

Error: $("#boxWrapper .close") is null

任何想法爲什麼?

我完整的代碼是在這裏:jsfiddle

乾杯

+0

其中u啓動'$(文件)。就緒(函數(){//把你的代碼})'? – diEcho 2011-03-08 12:14:32

+0

ÿü把'joomla'碼成的jsfiddle,沒有人可以測試 – diEcho 2011-03-08 12:16:04

+0

的的jsfiddle不會拋出這個錯誤。你應該至少填寫正確的字段。例如。在JavaScript字段中,不應在代碼周圍放置'

1

擺脫JS部分的<script>標籤。這些都是語法錯誤。你的JS代碼將被jsfiddle本身親切地放置在適當的設置中。

也擺脫被複制到HTML部分<script>塊。

然後,你需要定義「PANEL1」變量。

而且所有這些標籤(的Joomla?)不會在的jsfiddle做任何事情。

因爲所有這些問題從什麼似乎只是不熟悉如何使用作品的jsfiddle,這些都不是可能是你的實際問題,幹編輯 —。所以現在你知道了。無論如何,最有可能的問題是,您在嘗試在頁面上使用jQuery之前嘗試使用jQuery。但是,如果沒有看到您的代碼,很難說。

+0

從JS Fiddle中刪除腳本。我將刪除Joomla標籤。 – StuBlackett 2011-03-08 12:17:21

+0

他的JS代碼是完美的,我檢查了[jslint](jslint.com)。但YES js不應該放在html部分中jsfiddle – diEcho 2011-03-08 12:18:22

+0

現在可能會好,但它不是前一陣子... – Pointy 2011-03-08 12:19:46

2

Here是一個工作示例

$(document).ready(function() { 
    $('#boxWrapper .close').css({"opacity": "0.0"}); 
    var panel1 =true; 
     $('#boxWrapper .button').click(
     function() { 

      if (panel1) { 
       $('#boxWrapper .open').animate({"opacity": "0.0"}, "slow"); 
       $('#boxWrapper .close').animate({"opacity": "1.0"}, "slow"); 
       $('#boxWrapper').animate({"left": "-=200px"}, "slow", function() {panel1 = false;}); 
      } 
      else { 
       $('#boxWrapper .open').animate({"opacity": "1.0"}, "slow"); 
       $('#boxWrapper .close').animate({"opacity": "0.0"}, "slow"); 
       $('#boxWrapper').animate({"left": "+=200px"}, "slow", function() {panel1 = true;}); 
     } 
     } 
     );  
     }); 
+0

乾杯金,我現在得到錯誤:$(document).ready不是一個函數 – StuBlackett 2011-03-08 12:24:17

+1

你需要在腳本之前包括你的jquery – Kimtho6 2011-03-08 12:27:25

+0

@Kim我已經把代碼放在HEAD中,直接在jQuery之後。仍然給我那個錯誤。 – StuBlackett 2011-03-08 12:47:45