crossbrowser request