Задать вопрос

Как сделать xmlHttpRequest кроссбраузерным?

Привет всем, делаю простой чат на чистом Javascript и столкнулся с одной проблемой:

А именно с кроссбраузерностью... При создании объекта xmlHttpRequest начинаются проблемы в новых браузерах Google Chrome и Mozilla Firefox (в других не тестировал). Сейчас глянул, как работает в IE8 - с объектом xmlHttpRequest все ОК, но есть много других проблем...

Вот код:

function createXmlHttpRequestObject() {
	var xmlHttp;
	try{
		xmlHttp = new xmlHttpRequest();
	}
	catch(e){
		var XmlHttpVersions = new Array("MSXML2.XMLHTTP.6.0", "MSXML2.XMLHTTP.5.0", "MSXML2.XMLHTTP.4.0", "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP");
		for (var i = 0; i < XmlHttpVersions.length && !xmlHttp; i++) {
			try{
				xmlHttp = new ActiveXObject(XmlHttpVersions[i]);
			}
			catch (e){}
		}
	}
	if (!xmlHttp) {
		alert("Ошибка создания объекта xmlHttpRequest.");
	}else{
		return xmlHttp;
	}
}


В браузерах Google Chrome и Mozilla Firefox постоянно выскакивает alert("Ошибка создания объекта xmlHttpRequest.");

Как мне нужно изменить этот код, чтобы сделать его кроссбраузерным и заставить работать в современных браузерах?
  • Вопрос задан
  • 3932 просмотра
Подписаться 4 Оценить Комментировать
Решения вопроса 1
@Samuel_Leonardo
var xmlHttp = new XMLHttpRequest();
(IE7+, Firefox, Chrome, Safari, and Opera)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
www.quirksmode.org/js/xmlhttp.html - попробуйте этот снипет.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы