ボタンがたくさんありますが、別のボタンをクリックすると、別の画像やテキストが表示されます。私は自分の望むことを達成することができますが、コードは非常に長く、非常に反復的であるように見えます。例えば:
var aaClick = false;
$("aa").observe('click', function() {
unclick();
$('characterPic').writeAttribute('src',"aa.jpg");
$('characterBio').update("aatext");
$('aa').setStyle({ color: '#FFFFFF' });
aaClick = true;
});
$("aa").observe('mouseover', function() {
if (!aaClick) $('aa').setStyle({ color: '#FFFFFF' });
});
$("aa").observe('mouseout', function() {
if (!aaClick) $('aa').setStyle({ color: '#666666' });
});
function unclick() {
aaClick = false;
$('aa').setStyle({ color: '#666666' });
}
bb、ccなども同じで、新しいボタンを追加するたびに、クリック解除機能にも追加する必要があります。これはかなり面倒で、グーグルで検索しようとしましたが、リストされているすべてのアイテムをクリックするだけでした。他のボタンがクリックされたときにボタンを上げる必要があるため、まだ理解できませんでした。
異なるIDを取り、まったく同じことを行うジェネリック関数を作成する方法はありますか?私が見ることができることから、aaを他のIDに置き換えることができれば、多くのコードを減らすことができます。ありがとう!!!