It fires every time for me in Safari, Chrome, and Firefox. It seems like `input` is a synthesized event - it doesn't appear in `monitorEvents(document)` on Chrome or Safari, but if I add an event handler at the console (ie. `window.addEventListener('input', function(e) { console.log('input event on', e.target); })`), it works as expected.

It's in the [HTML5 standard](http://www.whatwg.org/specs/web-apps/current-work/multipage/common-input-element-attributes.html#event-input-input) and is [supported]((https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers.oninput)) by the latest versions of Safari, Chrome, Firefox, IE, and Safari on iOS (and I imagine on Android as well).