It is certainly possible to do this with CSS alone:
div { background-color:#000; }
div:hover { background-color:#cc0000; }
When you hover over the div the background color will turn from black to red.
It is my opinion that using javascript for this task is overkill. You can do some pretty sophisticated things with the :hover pseudo selector. Consider this markup (and CSS):
<div>I'm just a div <h1>I'm just an h1</h1></div>
div h1 { font-size:10px; font-weight:normal; }
div:hover { border:1px dotted #000; }
div:hover h1 { font-size:32px; font-weight:bold; color:#cc0000; }
As you can see, we can use the :hover selector in a rule like above to not only style the hovered element, but any children elements as well. This premise is how a lot of 'fly out' navigation is made with little more than nested uls.