This sounds fairly elaborate to me. Certainly not impossible, but will require tight cooperation between CSS and Javascript. I would encourage the use of JQuery and suspect RBrown might be on the right path by suggesting an existing item.
If you end up doing it yourself, be prepared to spend a good amount of time figuring it out. You also might want to take into account touchscreen events (which don't involve a mouse at all).