マウスオーバーで色の変更と画像の変更を行うのに問題があります(Jqueryを使用するか、可能であればCSSを使用します)が、最初の要素のみが変更されるか、すべてが変更されるという問題があります(IDを使用)デザインのすべての要素の /CLASS)、これが私の html であり、私のデザインの CSS です。
CSS:
#button_id {
margin: 5px;
display: block;
}
#button_nav {
display: inline;
}
#button_img {
background-image: url('images/left_nav_button.gif');
width: 11px;
height: 11px;
float: left;
}
HTML:
<div id="button_id" class="button_id">
<div id="button_nav">
<div id="button_img" class="button_img"></div>
<div id="button_name" class="button_name">Employment & skills</div>
<div id="clear"></div>
</div>
</div>
次のようにjQueryを使用してみました:
$(".button_id").mouseover(function() {
$("#button_img").css('background-image', 'url(images/left_nav_button_hover.gif)');
$(".button_id").css('color','#0365b9');
}).mouseout(function() {
$(".button_img").css('background-image', 'url(images/left_nav_button.gif)');
$(".button_id").css('color','#8C8C8C');
});
私はそれで遊んでみましたが、2 つの状況に陥りました。
- 全員が色を変えたとき + 背景画像
- 最初の div ( id="button_id" class="button_id" ) のみが変更されました。
クラス/ IDを切り替えて遊んでみましたが解決できませんでした。また$("#this")
、色でのみ機能するものを使用してみました(画像は他のdivであるため、.childrenも使用しようとしましたが、よくわかりませんでした他のdivに設定する方法、私は次のようなものを試しました
$(this).children(("#element")).css(..)
しかし、うまくいきませんでした:(