you could implement it like:
wrap all the column content with outputPanel with block layout. Additional div will be created in td. Then you could catch click events in order to add some highlighting and remove previous one using simple jquery selectors and css classes related method methods calls.
server side synchronization
put a4j:support with onclick event to this output panel or use jsFunction call after highlight method calls - it will rise request after the click on cell. Pass some parameters(row identifier, cell identifier) with a4j:param. So you will be able to catch the property of some object which was selected on server side.
NOTE if you will choose to use support and not jsFunction - highlighting js stuff should be called from onsubmit of that support. Because RF not supports definitions of event attributes together with using support on the same event.