Я работаю над парсингом некоторых xml через jquery ajax.У меня все работает хорошо во всех браузерах, за исключением IE.
Я сузил его до того места, где висит IE, и я не уверен, как это исправить.Я не могу сказать, если это проблема с jquery, который я использую, чтобы получить HTML, или это проблема с моим XML или это то, что я пропускаю.Интересно то, что когда я предупреждаю свою переменную, содержащую данные xml, IE корректно выводит всю информацию правильно, но кажется, что она не может обойти ее и правильно отформатировать данные.Пожалуйста, помогите.
Вот код, который я использую для извлечения данных из моего xml:
function parseXML (data) {
$(data).find("section").each(function() {
var $section = $(this),
photos = $section.find("photo"),
photoContainer = $("<div></div>", {
id: $section.attr("id"),
"class": "gallery-section"
});
photos.each(function() {
var photo = $(this),
imageurl = photo.attr("imageurl"),
title = photo.find("title").text(),
description = photo.find("description").html(),
kind = photo.find("description").attr("type");
icon = photo.find("icon").attr("source");
iconClass = photo.find("icon").attr("class");
var photoWrapper = $("<div class='photo'></div>"),
imageElem = $("<img />", {
"src": imageurl,
"class": "gallery-photo"
}),
photoInfo = $("<div></div>", {
"class": "photo-info " + kind
}),
iconInsert = $("<img />", {
"src": icon,
"class": iconClass
}),
header = $("<h1></h1>", {
text: title
}),
photoDescription = $("<div></div>", {
html: description
});
photoInfo.append(iconInsert).append(header).append(photoDescription);
photoWrapper.append(imageElem).append(photoInfo);
photoContainer.append(photoWrapper);
});
$("#photo-viewer-inner").append(photoContainer);
});
var videos = "<div id='videos'></div>";
$("#photo-viewer-inner").append(videos);
$("#videos").load("images/gallery-images/videos.html #video-inner");
}
/* Get Photos From XML */
var dataType;
if ($.browser.msie) {
dataType = "text";
} else {
dataType = "html";
}
$.ajax({
type: "GET",
url: "images/gallery-images/gallery-images.xml",
dataType: dataType,
success: function( data, status )
{
parseXML( data );
alert(data);
},
});