Yes you can, as noted on MDN and W3 you can count on the inner most event to fire first and as the action bubbles up, subsequent events will fire. There is a difference on what browsers consider a keypress event.
From QuirksMode: (Capturing fires outside to inside i.e. down arrow and bubbling fires inside to outside i.e. up arrow).
Capturing-> | | / \ <-Bubbling
-----------------| |--| |-----------------
| element1 | | | | |
| -------------| |--| |----------- |
| |element2 \ / | | | |
| -------------------------------- |
| W3C event model |
------------------------------------------
Using an event listener you can dictate capturing vs bubbling with the 3rd parameter.
element1.addEventListener('keypress',myScript,true) // Capture
element1.addEventListener('keypress',myScript,false) // Bubble
*default
object.addEventListener("keypress", myScript, false);
== <div onkeypress="myScript()">
One thing to note, IE does not follow the same model, but you can still count on bubbling, i.e. inside out.