ここに JSFiddle があるので、それで遊ぶことができます: http://jsfiddle.net/9nr4Y/
HTML:
<div class="login">Login</div>
<br />
<div class="login">Login 2</div>
JavaScript:
(function() {
var elms = document.getElementsByClassName("login"),
l = elms.length, i;
for( i = 0; i < l; i++ ) {
( function( i ) {
elms[i].onmouseover = function() {
this.style.color = "#000000";
this.style.background = "#FFFFFF";
};
})(i);
( function( i ) {
elms[i].onmouseout = function() {
this.style.color = "#FFFFFF";
this.style.background = "#000000";
}
})(i);
}
})();
クラス名で要素を取得する自己呼び出し関数を作成します。この理由は、とにかく ID を持つ複数の要素を持ちたくないからです。クラス名を取得すると、そのクラスを持つ項目の配列が生成されます。次に、新しい配列を反復処理して、イベントをそれぞれに割り当てることができます。
次に、実際のイベントの代わりに「this」を使用して個々の要素を取得します。
参考:
getElementsByClassName で現在の要素を取得する方法