Sen hover için JavaScript gerekmez. Lütfen ipucu olarak hizmet veren bir eleman yapmak ve açılan düğmesinin üzerinde konumlandırmak. Sonra ikisi için bir üst <div>
olun. HTML bu gibi görünmelidir:
<div id="container">
<div id="button">...</div>
<div id="tooltip">...</div>
</div>
Bunu yaptıktan sonra, araç ipucu konumlandırmak ve gerektiğinde bunu göstermek için CSS kullanabilirsiniz.
#container {
/* All child elements should be positioned relative to this one. */
position: relative;
}
#container #tooltip {
/* Hide by default. */
display: none;
/* Place the tooltip 2px above the button. */
position: absolute;
bottom: 2px;
right: 0px;
}
#container #button:hover + #tooltip {
/* Show it when someone's hovering over the button. */
display: block;
}
Açılan kutusunu göstermek için, muhtemelen JavaScript gerekir. Konteynere başka bir öğe ekle:
<div id="container">
<div id="button">...</div>
<div id="tooltip">...</div>
<ul id="selection">
<li>Something</li>
<li>Something Else</li>
<li>A Third Thing</li>
</ul>
</div>
Pozisyon bunu size position: absolute
kullanarak gibi ve kullanarak gizlemek gibi display: none
. Biz butonuna tıkladıklarında sonra göstermek:
$('#button').click(function() {
$('#selection').show();
});
Daha sonra sürece onlar da #selection
gizlemek gibi, alt kalemler onlar gibi her şeyi yapabilirsiniz.
$('#selection li').click(function() {
// do something
$('#selection').hide();
});
Son olarak, vurgulu üzerine arka plan ve metin renklerini değiştirmek istiyorum. Yeter kolay:
#selection li {
background-color: #ccc;
color: black;
}
#selection li:hover {
background-color: black;
color: white;
}
Bu IE 6 ya da (sanırım) 7 mükemmel çalışmaz - Bunun için alternatif çözümler araştırmak gerekir. JavaScript kullanmak veya IE7.js and IE8.js check out ya.