2012-05-18 4 views
3

Я смотрел на примеры использования XML и XSLT в JavaScript, и я не понимаю различия между различными параметрами в IE:XML/XSLT в JavaScript

  • Msxml2.DOMDocument.6.0
  • Msxml2.DOMDocument.3.0
  • Microsoft.XMLHTTP
  • Microsoft.XMLDOM

Так при использовании подхода:

var xml = new ActiveXObject("Xxxxxxx"); 

С xxxxxx, являющимся одним из вышеуказанных вариантов.

Что следует использовать? В чем разница между ними?

+1

Вы можете посмотреть здесь: http://ajaxpatterns.org/XMLHttpRequest_Call – benqus

+0

Спасибо @benqus - так что ссылка, кажется, указывает на новый объект ActiveXObject ("Msxml2.XMLHTTP"); как тот, который нужно использовать. Но какова история за остальными, выполняют ли они одну и ту же функцию или имеют альтернативное использование? – Nealbo

+0

Возможно, они есть, но я предполагаю, что в более ранних версиях Интернета. =) Возможно, я ошибаюсь, и это действительно специфические вещи IE и Microsoft, но общий подход заключается в использовании ссылки, упомянутой в ссылке. Это классно и для текста, и для xml. =) – benqus

ответ

6

Программный пакет программного обеспечения Microsoft на базе COM называется MSXML и существует в разных версиях, которые могут сосуществовать в системе Windows. Все поддерживаемые в настоящее время версии ОС Microsoft, соответственно, новейшие поддерживаемые пакеты Microsoft OS поставляются с MSXML 3 и MSXML 6. Идентификаторы программы, которые вы передаете в ActiveXObject в JScript, задокументированы для MSXML 3 здесь: http://msdn.microsoft.com/en-us/library/ms766426%28v=vs.85%29 и для MSXML 6 здесь: http://msdn.microsoft.com/en-us/library/ms764622%28v=vs.85%29. Как вы можете видеть, как-то путано, что идентификаторы программ начинаются с «MSXML2», а версия MSXML добавляется в конце, поэтому документ DOM MSXML 3.0 имеет идентификатор программы MSXML2.DOMDocument.3.0 и документ DOM MSXML 6.0 с идентификатором программы Msxml2.DOMDocument.6.0.

Идентификаторы программ, начинающиеся с Microsoft., являются устаревшими идентификаторами программ, представленными с более старыми версиями MSXML, в наши дни они не нуждаются в них, когда MSXML 3 и MSXML 6 являются частью ОС или последней службы на любой поддерживаемой ОС.

Какая версия для выбора MSXML 3 или 6, отчасти зависит от того, что вы хотите сделать; основное различие между MSXML 3 и MSXML 6 состоит в том, что MSXML 6 имеет синтаксический анализатор, поддерживающий проверку на соответствие схеме или набору схем, в то время как MSXML 3 поддерживает только проверку на основе DTD. MSXML 6 по умолчанию также имеет некоторые более жесткие настройки безопасности, о которых вам нужно знать, см. http://msdn.microsoft.com/en-us/library/ms754611%28v=vs.85%29.

В качестве сообщения также упоминается XSLT, и MSXML 3 и 6 поддерживают XSLT и XPath 1.0, поэтому с точки зрения стандартного соответствия вы можете выбрать любой из них, с точки зрения производительности вы можете обнаружить, что MSXML 6 работает лучше.

Смежные вопросы