Reputation: 32721
This demo does not add class when you hover a list item.
What am I doing wrong here?
$("li").hover(
function () {
$(this).addClass('hover);
},
function () {
$(this).removeClass("hover");
}
);
html
<ul>
<li>Milk</li>
<li>Bread</li>
<li>Chips</li>
<li>Socks</li>
</ul>
css
.hover{
color:green;
font-size: 20px;
}
Thanks in advance.
Upvotes: 2
Views: 63151
Reputation: 322492
While others noted the missing quotation mark, I'd note that you should really be doing this with CSS instead of javascript:
li:hover{
color:green;
font-size: 20px;
}
IE6 doesn't support this on a <li>
, but you could wrap the content with an <a>
and style that if support is needed.
If you did use javascript, you could reduce your code like this:
$("li").hover( function (e) {
$(this).toggleClass('hover', e.type === 'mouseenter');
});
Upvotes: 3
Reputation: 30238
You Have Missed the quote '
$("li").hover(
function () {
$(this).addClass('hover');
},
function () {
$(this).removeClass("hover");
}
);
Upvotes: 1
Reputation: 253308
Your JavaScript was badly formed:
$("li").hover(
function () {
$(this).addClass('hover);
},
function () {
$(this).removeClass("hover");
}
);
Should be:
$("li").hover(
function () {
$(this).addClass('hover');
},
function () {
$(this).removeClass('hover');
}
);
If you click on the JS Lint
button to the top of the screen it would've told you this (this isn't intended as a criticism, just a note for your future use of JS Fiddle).
Upvotes: 29
Reputation: 498972
Your javascript syntax is incorrect
$(this).addClass('hover);
Should be:
$(this).addClass('hover');
You forgot to terminate the string.
It works just fine with this change.
Upvotes: 6