2012-09-08 29 views
1

很抱歉,如果這是一個重複,但無法找到任何東西一樣ISH ...爲什麼如果/ elseif的語句不工作的jQuery

我不能得到的,如果else語句工作。我完成了第一部分,但第二部分不完成。 目標是點擊一個div,它會展開,然後再次點擊時會縮小。

$(document).ready(function(){ 
    if($(".back2").css("height") < "51px") 
    { 
     $(".back2").click(function() 
     { 
      $(".back2_img,.back2").css({"height":"200px"}, 'slow'); 
     }); 
    } 
    ElseIf($(".back2").css("height") >"55px") 
    { 
     $(".back2").click(function() 
     { 
      $(".back2,.back2_img").css({"height":"50px"}, 'slow'); 
     }); 
    }; 
}); 

回答

4

正確的語法是else if

if (condition) { 
    //code 
} 
else if (condition) { 
    //code 
} 
3

我收拾你的代碼,也實在是不else ifElseIf
您的;之一也有輕微的語法問題。 (不一定是破壞密碼的錯誤,但只是保持100%一致的好習慣,請參閱評論以獲取更多信息)。

適當的代碼嵌套將爲您節省數小時的頭痛!

$(document).ready(function() { 
    if ($(".back2").css("height") < "51px") { 
     $(".back2").click(function() { 
      $(".back2_img,.back2").css({ 
       "height": "200px" 
      }, 'slow'); 
     }); 
    } 
    else if($(".back2").css("height") > "55px") { 
     $(".back2").click(function() { 
      $(".back2,.back2_img").css({ 
       "height": "50px" 
      }, 'slow'); 
     }); 
    } 
});​ 
+0

此外,使用大於和小於字符串的比較將無法按預期工作。即。 「140px」>「55px」= false –

+0

';'s不是必需的,也不是語法錯誤將它放在用戶所在的位置。 [參考文獻](http://stackoverflow.com/questions/1834642/best-practice-for-semicolon-after-every-function-in-javascript)。 – Daedalus

+0

「; s不是必需的」 - 我的觀點恰恰是,爲什麼有一些不需要的東西? - 爲避免混淆,特別註明代碼終點的分號。再加上JS驗證器會拋出一個錯誤,所以不妨修復它們。 –

2

這是「否則,如果」不「elseif的」,JavaScript是一種區分大小寫的語言。請用嵌套風格寫下!爲了上帝的緣故......請對你和其他人好。像這樣:

$(document) 
.ready(
    function(){ 
     if ($(".back2").css("height") < "51px") 
     { 
      $(".back2") 
      .click(
       function() 
       { 
        $(".back2_img,.back2") 
        .css(
         {"height":"200px"}, 
         'slow' 
        ); 
       } 
      ); 
     } 
     else if ($(".back2").css("height") >"55px") { 
      $(".back2") 
      .click(
       function() 
       { 
        $(".back2,.back2_img") 
        .css(
         {"height":"50px"}, 
         'slow' 
        ); 
       } 
      ); 
     }; 
    } 
); 
相關問題