Я пытаюсь получить цвет фона <h2>
и цвет его брака <p>
чтобы он исчезал с другим цветом при наведении и исчезал до исходного цвета, когда вы больше не вибрируете над ним.
Кажется, я не понимаю.
Здесь у меня есть:
jQuery('div.flex-caption h2').hover(function() {
jQuery( this ).css({background:'#2F2F2F'}).fadeIn( 500 );
jQuery( this ).sibling('p').css({background:'#2F2F2F'}).fadeIn( 500 );
},
function() {
jQuery( this ).css({background:'rgba(0, 0, 0, 0.5)'}).fadeIn( 500 );
jQuery( this ).sibling('p').css({background:'rgba(0, 0, 0, 0.5)'}).fadeIn( 500 );
});
jQuery('div.flex-caption p').hover(function() {
jQuery( this ).css({background:'#2F2F2F'}).fadeIn( 500 );
jQuery( this ).sibling('h2').css({background:'#2F2F2F'}).fadeIn( 500 );
},
function() {
jQuery( this ).css({background:'rgba(0, 0, 0, 0.5)'}).fadeIn( 500 );
jQuery( this ).sibling('h2').css({background:'rgba(0, 0, 0, 0.5)'}).fadeIn( 500 );
});
Разметка HTML:
<div class="flex-caption">
<h2 class="captionTitle">TITLE</h2>
<div class="captionText">CONTENT</div>
</div>
Я бы просто использовал для этого чистый CSS.
Вы можете использовать transition
в CSS3, чтобы выполнить то, что вы пытаетесь сделать.
h2 {
background-color: red;
transition: background-color .25s ease-in-out
-moz-transition: background-color .25s ease-in-out
-webkit-transition: background-color .25s ease-in-out
}
h2:hover {
background-color: blue;
}
Псевдокласс класса hover
будет соответствовать, когда вы нависаете над элементом h2.
Вот сценарий и пример.
ПРИМЕЧАНИЕ. При использовании CSS3 он не будет работать в старых браузерах.
Первая проблема заключается в том, что у вас нет тэга p в вашем элементе HTML, а вторая проблема заключается в том, что вы не можете одновременно использовать 2 функции для запуска события
поэтому здесь вы можете увидеть правильное решение,
HTML:
<div class="flex-caption">
<h2 class="captionTitle">TITLE</h2>
<p class="captionText">CONTENT</p>
</div>
JS:
jQuery('div.flex-caption h2').mouseover(function() {
jQuery( this ).css({background:'#2F2F2F'}).fadeIn( 500 );
jQuery( this ).sibling('h2').css({background:'#2F2F2F'}).fadeIn( 500 );
});
jQuery('div.flex-caption p').mouseover(function() {
jQuery( this ).css({background:'#2F2F2F'}).fadeIn( 500 );
jQuery( this ).sibling('p').css({background:'#2F2F2F'}).fadeIn( 500 );
});
jQuery('div.flex-caption h2').mouseout(function() {
jQuery( this ).css({background:'#FFFFFF'}).fadeIn( 500 );
jQuery( this ).sibling('h2').css({background:'#FFFFFF'}).fadeIn( 500 );
});
jQuery('div.flex-caption p').mouseout(function() {
jQuery( this ).css({background:'#FFFFFF'}).fadeIn( 500 );
jQuery( this ).sibling('p').css({background:'#FFFFFF'}).fadeIn( 500 );
});
см. также http://jsfiddle.net/sC4He/5/
надеюсь, что это поможет
<p>