if the browser supports asynchronous... returns an appropriate listener...