私はこのようなナビゲーションメニューを持っています
<ul id="nav">
<li> <a id="firstLink" href="#"> Link 1 </a> </li>
<li> <a id="secondLink" href="#"> Link 2 </a> </li>
<li> <a id="thirdLink" href="#"> Link 3 </a> </li>
<li> <a id="fourthLink" href="#"> Link 4 </a> </li>
</ul>
マウスが下がっているときに各アンカータグに関数を関連付けたいので、外部jsファイルがあり、コードは
$(document).ready(function() {
$('#firstLink').onmousedown(doSomething());
[ ... ]
});
function doSomething() {
// this function does something
}
私の問題は、イベントハンドラーをインラインにすると、スクリプトが機能し、問題が発生しないことです。
<li> <a href="#" id="firstLink" onmousedown="doSomething()"> Link 1 </a> </li>
一方、上記のように外部ファイルを使用すると、何も起こらず、Chromeから返さUncaught TypeError: Object [object Object] has no method onmousedown
れ、FirefoxとFirebugから返されます$("#firstLink").onmousedown is not a function
。わかりません、何が間違っているのですか?