0
    $('.nav').bind('click',alert(0));  and:
    $('.nav').bind('click',function(){alert(0)})

2番目のコマンドだけが機能するのはなぜですか?

4

2 に答える 2

5

jQuery.bindfunction2番目のパラメーターとしてが必要です。alertを返すvoidため、呼び出す関数はありません。

于 2012-06-17T14:06:42.370 に答える
2

ここで2番目のコマンドに表示されているのは、コマンドを無名関数でラップしていることです。クリック「イベント」のハンドラーには、「イベント」がトリガーされたときに実行できる関数が必要です。

あなたもこのようなことをすることができます-

$('.nav').bind('click',showAlert);
function showAlert(){
  alert(0);
}

ここでは、関数の名前を渡します。

それは本質的に-と同じです

$('.nav').bind('click',function(){
  alert(0);
});
于 2012-06-17T14:08:08.653 に答える