2012-01-23 43 views
0

http://jsfiddle.net/cwUcM/可以只。點擊一旦

我已經通過所有的似乎有一個類似標題的其他線程的走了,但我還沒有發現任何=(

我加了的console.log ,這也是第一次點擊後,僅啓動。

它應該是一個相當簡單的問題。

爲什麼事件僅被首次點擊後,解僱了?

謝謝!

回答

2

您只在第一次加載時調用if聲明。

之後,點擊事件已經被註冊爲只做一件事。在if語句之外移動.click處理程序。

請參見:http://jsfiddle.net/SQxYP/

+0

我會盡快我可以(對夫婦更分鐘^^)多謝接受這個答案! – user1156929

3

if條件應該是click處理程序中。嘗試這個。

$(document).ready(function() { 
    $('#menu').click(function() { 
     if($("#openCloseIdentifier").is(":visible")){ 
      $("#menu").animate({ 
       marginTop: "2%" 
      }, 500); 
      $("#openCloseIdentifier").hide(); 
     } 
     else{ 
      $("#menu").animate({ 
       marginLeft: "5%" 
      }, 500); 
      $("#openCloseIdentifier").show(); 
     } 
    }); 
}); 

Demo

+0

我很感謝你的回覆,不幸的是你9秒太慢=(我會仍然upvote只要我可以=) – user1156929

1

額外的點擊工作,你只是看不到結果。

$("#menu").animate({ 
    marginTop: "2%" 
}, 500); 

更改爲:

$("#menu").animate({ 
     marginTop: "+=2%" <--- you need at ADD 2%, not set it to 2%! 
}, 500); 
+0

沒有回答我的問題,因爲這是在if語句後有.click事件的問題。雖然這個迴應確實回答了我最終會遇到的另一個問題,所以謝謝! – user1156929

相關問題