cross browser requestanimationframe