javascript - jQuery on mouseEnter 背景颜色淡入淡出

标签 javascript jquery html css

我正在尝试获取 <h2>和它的兄弟<p>的背景颜色在悬停时淡化为不同的颜色,当您不再悬停在其上时淡化回原始颜色。

我好像不太对..

这是我的 JS:

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。

您可以在 CSS3 中使用 transition 来完成您想要做的事情。

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;
}

当您悬停在 h2 元素上时,hover 伪类将匹配。

这是一个 fiddle 展示和例子。

http://jsfiddle.net/sC4He/

注意:使用 CSS3,它不能在旧版浏览器中工作。

关于javascript - jQuery on mouseEnter 背景颜色淡入淡出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19912813/

相关文章:

javascript - 您会将哪种技术用于物理模拟 SVG 或 Canvas?

html - Bootstrap 按钮在移动设备上离开页面

javascript - Rails 如何 Gzip Javascript? (英雄)

javascript - ePub 未在 futurepress/epub.js 中定义

javascript - 将子级的宽度设置为父级的宽度

javascript - 如何使用 Selenium 中的 JQuery 在 h3 中创建 .delay 函数?

php - 所选菜单项的浮点线颜色

javascript - 我如何在没有 Java/Flash 的情况下实时捕获音频(从麦克风)

javascript - Z-index 和 jQuery 切换

javascript - 每个 json 加载中的 Jquery.html 都不起作用