Сначала вам нужно сделать свои идентификаторы уникальными, вот хороший ресурс о том, как создать действительные идентификаторы: Каковы допустимые значения атрибута id в HTML? . Вам, JS, нужно немного поработать, чтобы выбрать только элементы .hidden
, являющиеся потомками сетки, над которой вы в данный момент находитесь, а для объявлений классов для элементов .something
требуется заключительная кавычка:
HTML:
<ul class = "grid">
<li><div class = "something"><div class = "hidden">hi</div></div></li>
<li><div class = "something"><div class = "hidden">hi</div></div></li>
<li><div class = "something"><div class = "hidden">hi</div></div></li>
</ul>
<ul class = "grid">
<li><div class = "something"><div class = "hidden">hi</div></div></li>
<li><div class = "something"><div class = "hidden">hi</div></div></li>
<li><div class = "something"><div class = "hidden">hi</div></div></li>
</ul>
JQuery:
<script src="js/jquery.js"></script>
<script>
$(function() {
//using the `.children()` function will be faster than $('.grid li')
$(".grid").children('li').hover(
function (e) {
//since $(this) gets used more than once its a good idea to cache it
var $this = $(this),
//to get an index you can just call `.index()` in an element and it will give you that element's index with respect to its siblings
index = $this.index();
$this.find(".hidden").eq(index).show();
},
function(e) {
var $this = $(this),
index = $this.index();
$this.find(".hidden").eq(index).hide();
}
);
});
</script>
Документы для .index()
: http://api.jquery.com/index