У меня такая структура:
<div class="module">
<div class="moduleTop"></div>
<div class="moduleContent"></div>
<div class="moduleBottom"></div>
</div>
И каждый раздел модуля имеет свойство CSS
background: url (imagename.png);
Мне нужно использовать jquery, чтобы изменить каждое из имен изображений трех частей модуля на imagename-over.png каждый раз, когда .module зависает, и возвращаться к исходному источнику, когда .module div зависает.
Любая помощь ?
Спасибо.
2 ответа
Все современные браузеры поддерживают :hover, вы можете:
.module { background-image:url(/normal.png); } /* if you need this */
.module:hover .innerclass { background-image:url(/over.png/); }
Для IE6 (который не поддерживает :hover ни на чем, кроме элементов привязки) вы можете сделать
$('.module').hover(function() {
$('.innerclass', this).addClass('foo');
}, function() {
$('.innerclass', this).removeClass('foo');
});
.foo { background-image:url(/over.png); }
Вы также можете взглянуть на использование спрайтов CSS, в основном просто складывая состояния нескольких изображений в одно и меняя положение, что приводит к меньшему количеству HTTP-запросов.
Вот пример простого использования CSS для этого:
div.module:hover > div.moduleTop {
background: red;
}
div.module:hover > div.moduleContent {
background: yellow;
}
div.module:hover > div.moduleBottom {
background: green;
}
Но это пахнет как задание, поэтому вы, вероятно, должны использовать jquery. Если это так, добавьте прослушиватель hover в верхний div, а затем внутри измените классы элементов и определите классы в своем CSS, как в сообщении meder (вы, вероятно, захотите сделать это в любом случае для IE6 weiners. )
Похожие вопросы
Новые вопросы
jquery
jQuery — это библиотека JavaScript. Также рассмотрите возможность добавления тега JavaScript. jQuery — это популярная кросс-браузерная библиотека JavaScript, которая упрощает обход объектной модели документа (DOM), обработку событий, анимацию и взаимодействие AJAX, сводя к минимуму расхождения между браузерами. Вопрос с тегом jQuery должен быть связан с jQuery, поэтому jQuery должен использоваться рассматриваемым кодом, и в вопросе должны быть как минимум элементы, связанные с использованием jQuery.
.module:hover .moduleTop