Reputation: 201
I have this script to cause a background color on a paragraph on hover of link within the paragraph. What I don't know how to do is cause it to return to the original background color once I "un-hover".
$(function(){
$(".box a").hover(function(){
$(this).parent().css('background-color', '#fff200');
});
});
Thanks!
Upvotes: 15
Views: 36206
Reputation: 1740
The function below works as onmouseover
and onmouseout
$(function () {
$(".box a").hover(function () {
$(this).parent().css('background-color', '#fff200');
}, function () {
// change to any color that was previously used.
$(this).parent().css('background-color', '#fff200');
});
});
Upvotes: 36
Reputation: 253318
If you must use jQuery for this, use addClass()
rather than css()
:
$('.box a').hover(function(){
$(this).closest('.box').addClass('hoveredOver');
}, function(){
$(this).closest('.box').removeClass('hoveredOver');
});
With the CSS:
.hoveredOver {
background-color: #fff;
}
References:
Upvotes: 1
Reputation: 9105
JQuery
$(".box a").hover(function(){
$(this).parent().css('background-color', '#fff200');
}, function() {
$(this).parent().css('background-color', '#ffffff');
});
See fiddle.
Upvotes: 2
Reputation: 3818
There is a hover out handler in the jQuery documentation. That's where you'd want to return the color to the original. If all you are doing is changing color, why not use CSS?
$(function(){
$(".box a").hover(function(){
$(this).parent().css('background-color', '#fff200');
},function(){
$(this).parent().css('background-color', '#originalhexcolor');
});
});
Upvotes: 1