Excellent, thanks for confirming! I think the problem is that the keycodes for JavaScript aren't strictly defined -- for Chrome they send us codes that map to the character that's on the key, and for Firefox they send something more related to where the key is on the keyboard. So for Chrome, when you press your "A" key, we get something we can map to an "A", whereas in Firefox we get something more like "the top left of the keyboard", which we assume is a "Q".
Hopefully it'll be standardised a bit someday -- I'm using a laptop with a Portuguese QWERTY keyboard right now, which is fine when I'm typing letters but goes strange with the punctuation characters -- so I can relate to how irritating it can be...