2013-04-29 39 views
0

對jQuery不熟悉,我想創建一個外部js文件,當單擊按鈕時它會顯示一條警告消息。jQuery SyntaxError:函數語句需要一個名稱

這是我曾嘗試:

(function($){ 
    events: function(){ 
     $('#myModal').bind('click', function(e){ 
      alert("test"); 
     }); 
    } 
})(jQuery,window,document); 

我得到一個錯誤:

SyntaxError: function statement requires a name

什麼,我哪裏做錯了,這是正確的方法是什麼?

回答

3

我不是很確定你的目標是什麼,但你所得到的是一個標記函數聲明沒有標識符(因此語法錯誤綁定事件)。

如果您只需綁定一個事件處理函數,那麼爲什麼您需要這個函數呢?這是你想要的嗎?

(function($){ 
    $('#myModal').bind('click', function(e){ 
     alert("test"); 
    }); 
})(jQuery,window,document); 

或者,你可能打算events爲對象的關鍵:

(function($){ 
    var someObj = { 
     events: function() { 
      $('#myModal').bind('click', function(e){ 
       alert("test"); 
      }); 
     } 
    }; 
})(jQuery,window,document); 

但很難說沒有知道你其實想acheive什麼。

1

可以按如下

(function($){ 
    $('#myModal').bind('click', function(e){ 
     alert("test"); 
    }); 
})(jQuery,window,document); 

or 

$('#myModal').click(function(e){ 
     alert("test"); 
    }); 
2

您可以events對象中的一個關鍵:

(function($){ 
    var o = { 
     events: function(){ 
      $('#myModal').bind('click', function(e){ 
       alert("test"); 
      }); 
     } 
    }; 
})(jQuery,window,document); 

或命名功能:

(function($){ 
    function events() { 
     $('#myModal').bind('click', function(e){ 
      alert("test"); 
     }); 
    } 
})(jQuery,window,document); 

還是擺脫function東西乾脆:

(function($){ 
    $('#myModal').bind('click', function(e){ 
     alert("test"); 
    }); 
})(jQuery,window,document); 

無知道events:是什麼,這很難說。