Я ищу способ управления CSS для определенного элемента при наведении. Поскольку это не элемент непосредственно в родительском роде, я не могу использовать CSS.
<article class="portfolio-item web">
<a data-rel="prettyPhoto" href="http://vimeo.com/34266952">
<img src="http://localhost/wordpress/wp-content/themes/dewuske/images/portfolio/introspection.jpg" alt="">
<span class="genericBeaconIsotope">
<span class="beaconContainer">
<span class="beaconBar"></span>
<span class="beaconCircle1"></span>
<span class="beaconCircle2"></span>
<span class="beaconText">Introspection</span>
</span>
</span>
</a>
</article>
Я пытаюсь навести на beaconContainer и повлиять на изображение. Он должен функционировать как опрокидывание. Вот что я пытаюсь выполнить в CSS:
-webkit-transform: scale(10);
-moz-transform: scale(10);
-o-transform: scale(10);
-ms-transform: scale(10);
transform: scale(10);
-ms-filter: "progid: DXImageTransform.Microsoft.Alpha(Opacity=0)";
filter: alpha(opacity=0);
opacity:0;
transition: all 1s ease-out 0s;
transition-property: all;
transition-duration: 1s;
transition-timing-function: ease-out;
transition-delay: 0s;
}
Как мне это сделать? Я знаю очень мало JavaScript или jQuery или как вызывать события у них, особенно так. благодаря
JQuery предоставляет несколько методов, которые могут вам помочь.
Вы можете вручную настроить CSS с помощью метода .css() или динамически применить классы CSS к элементам (это будет мой предпочтительный способ) с использованием методов.addClass() и .removeClass(), реагирующих на события пользователя таких как мышиные надстройки и т.д.
NB: Это конкретное решение jQuery для проблемы, представленной вашим вопросом.
Вам необходимо создать класс CSS со стилями, которые вы хотите применить:
.rollover {
/* your styles here */
}
и немного jQuery, который включал ваши стили, когда мышь над маяком Контейнер:
$('article.portfolio-item.web').each(function(index, articleElem) {
var article = $(articleElem);
var image = article.find('img');
var container = article.find('.beaconContainer');
container.mouseover(function() { image.addClass("rollover"); });
container.mouseout(function() { image.removeClass("rollover"); });
});
Он также будет работать, если на странице есть несколько статей.
Вы можете создать класс CSS, а затем добавить его в контейнер, когда вы наводите курсор, а затем удаляете класс, как только вы выходите:
$('.beaconContainer img').hover(function(){
$( this ).addClass(cssClassName);
}, function() {
$( this ).removeClass(cssClassName);
}
);
beaconContainer
. В противном случае вы действительно не должны использовать jQuery для этого.
В jQuery вы можете использовать функции addClass и removeClass. Сохраните все css в файле css, а затем просто измените класс каждого элемента.