2
忘了這件事我覺得這麼愚蠢,但我已經練習了一分鐘,而且我畫了一個空白。JavaScript - 定義函數而不調用它?
爲什麼slideDown被稱爲onload而不是點擊處理?
function buttonClicked(buttonNumber) {
$contentBox.slideDown("slow");
};
$button1.click = buttonClicked(1);
忘了這件事我覺得這麼愚蠢,但我已經練習了一分鐘,而且我畫了一個空白。JavaScript - 定義函數而不調用它?
爲什麼slideDown被稱爲onload而不是點擊處理?
function buttonClicked(buttonNumber) {
$contentBox.slideDown("slow");
};
$button1.click = buttonClicked(1);
你想構建它作爲
$button1.click(function() {
buttonClicked(1);
});
這將使被點擊$button1
時觸發。
因爲你調用'buttonClicked'。函數引用後的'()'總是調用該函數。例如:'function foo(){alert(42); }; FOO();'。這裏調用'foo'是因爲我在變量名後加了'()'。順便說一句,如果'$ button1'是一個jQuery對象,那麼你必須傳遞一個函數引用到'.click'方法,而不是給它賦值。請參閱http://learn.jquery.com/events/。 –