Как заменить активный элемент управления x проекта javascript

В настоящее время я работаю над проектом JavaScript, который использует backbone.js в качестве платформы. Это довольно старый проект, в котором используются компоненты Activex, теперь мне нужно полностью заменить эти элементы управления, чтобы даже когда у меня отключен активный x, моя функциональность работала должным образом. Как я могу достичь этого? Вот мой ниже кусок кода, который можно сослаться. Спасибо

function getXMLRequest() {
  var xmlHttp = null;
  if (location.protocol.substr(0, 4) == "http") {
    try { // Firefox, Opera 8.0+, Safari  
      xmlHttp = new XMLHttpRequest();
    } catch (e) { // Internet Explorer  
      try {
        // i need to replace these activex controls
        xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
      } catch (e) {
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
      }
    }
  } else {
    xmlHttp = new XMLCclRequest();
  }

  return xmlHttp;
}

1 ответ

Решение

Этот код использует ActiveX, только если браузер не имеет встроенной поддержки XMLHttpRequest.

т.е. если браузер Internet Explorer 7 или более ранней версии.

Никто не должен использовать этот браузер сегодня. Он не получает обновления безопасности. Он не работает в операционных системах, которые получают обновления безопасности.

Так:

function getXMLRequest() {
    return new XMLHttpRequest();
}

Если вам нужно поддерживать такие ужасно устаревшие браузеры, вам придется изменить код на сервере и клиенте, чтобы использовать JSONP.

Другие вопросы по тегам