2011-09-14 38 views
0

有些事情是錯的,但我不知道它是什麼..有人可以幫助我嗎?它使所有我的JavaScript的/ jQuery的失敗,你可以在這裏看到:http://www.jacoinc.com/new/StickorStay JQuery函數,錯誤

我不再然而得到一個錯誤,它不工作...

var wHeight = $(window).height(); 

var stickorstay = function() { 
    $('$supahslide').addClass('stay'); 
    if(wHeight >= 800) { 
     $('#supahslide').addClass('stick', function() { 
      $('#supahslide.stay').removeClass('stay'); 
     }); 
    } else { 
     if(wHeight < 800) { 
      $('#supahslide').addClass('stay', function() { 
       $('#supahslide.stick').removeClass('stick'); 
      }); 
     }; 
    }; 
}; 

$(window).resize(stickorstay);stickorstay(); 
+1

即使在包含鏈接時,描述問題也是一個好主意。 – Pointy

+0

這絕對是本地化的。一堆語法錯誤.. – thirtydot

+1

你看過JS錯誤控制檯嗎?它指向你有錯誤的那一行。錯誤信息不是最直觀的,但它的含義是'function foo {}'是無效的語法。 – JJJ

回答

3

功能語法不正確:

$(function stickorstay() { // missing() in your code 
    // ... 
}); 

當我嘗試頁面時,JavaScript錯誤控制檯(在Chrome中)明確指出了我。當你有這樣的問題時,這是首先要檢查的。

2

確實存在語法錯誤。

您在JS文件的第26行以錯誤的方式聲明瞭您的函數。

在JS,你可以通過兩種方式聲明的函數:

stickorstay = function() { 
    ... 
} 

或者

function stickorstay() { 
    ... 
} 
+0

雖然這是jquery .. –

+4

沒關係; ** jQuery是JavaScript **。 – Pointy

2

您似乎缺少一些() S:

var wHeight = $(window).height(); 

$(function stickorstay(){ 
    $('$supahslide').addClass('stay'); 
    if(wHeight >= 800) { 
     $('#supahslide').addClass('stick', function(){ 
      $('#supahslide.stay').removeClass('stay'); 
     }); 
    } else { 
     if(wHeight < 800) { 
      $('#supahslide').addClass('stay', function(){ 
       $('#supahslide.stick').removeClass('stick'); 
      }); 
     }; 
    }; 
}); 

$(window).resize(stickorstay);stickorstay(); 
0

另外,也許你意思是$('#supahslide')而不是$('$supahslide')