It is the explicitly stated policy of the RichFaces design group that they do not and never will support RichFaces 3 for IE10. Maybe IE9, too, but I don't remember.
RichFaces 4 is not upwards-compatible with RichFaces 3, in contravention of the usual
Java paradigm of deprecation and soft migration. The effort that is required to migrate is roughly the same as that required to migrate a Microsoft Visual Basic 6 app to VB.Net. Meaning, not especially complex, but a lot of grunt work.
The alleged justification for this is that since there were radical changes internal to RichFaces, they didn't want to support their legacy base (although I believe that for a fee, they'll convert for you). I'm less sanguine, since the places I've seen that are going to be the most work for me could have been made to fake it, and thus I'm not very happy about this Microsoft-like behavior.
Rather than mucking around with JavaScript constructs (which is perilous at the best of times), put a META tag into your pages that instructs IE to process the page in IE8-compatible mode. It's a poor solution, but the easiest way out until you can upgrade.
In addition to moving to RichFaces 4, you'd also need to move up to JSF2. But that's less work, since the JSF team was more considerate. And after all this time, it really is time to consider moving off JSF1 anyway.