Don't use .returnValue if .defaultPrevented exists

`.defaultPrevented` exists in IE9+. I checked in IE9, Chrome, and Firefox that it does default to `false`.

Fixes #527.
Merge pull request #597 from spicyj/gh-527

Don't use .returnValue if .defaultPrevented exists