fix blur event handler in IE11
promise/setTimeout fixes for FF, IE, Safari