It's [in HTML5](http://www.whatwg.org/specs/web-apps/current-work/multipage/dnd.html#the-datatransfer-interface) so expect everywhere eventually. I would think this would be safe: `if (e.dataTransfer && e.dataTransfer.files && e.dataTransfer.files.length > 0) {`