Either could have been used. DOMContentLoaded is the event only gets fired when going from "loading" to "interactive", where as "readystatechange" is fired upon any change of the ready state.