Хорошо, вот проблема, с которой я сталкиваюсь.Я вытягиваю SVG-файл и загружаю содержимое в тело.У меня есть вызов AJAX, который извлекает XML, который соответствует этому SVG.
Я могу изменить цвет заливки символа через jQuery, однако, когда я добавляю элемент в символ> g element itне будет отображаться в браузере, но он есть в Chrome.
Фрагмент кода jQuery
$(document).ready(function(){
$('body').load("../SVG_Tesing/svg.svg", function(){
$.ajax({
type: "GET",
url: "../SVG_Tesing/xml.xml",
dataType: "xml",
success: function(xml)
{
$(xml).find('plots').find('plot').each(function()
{
var fnPlotID = $(this).attr('id');
var fnBookingID = $(this).find('plotBooking').attr('id');
var fnPlotNumber = $(this).find('plotName').text();
$("#site_x5F_"+fnPlotID+" path:eq(1)").after("<text transform='scale(1,-1)'>"+fnPlotNumber+"</text>");
//Colours Static
var fnStaticOccupied = "#74A3C1";
var fnStaticPending = "#E23813";
var fnStaticOverdue = "#CD464F";
//Colours Touring Pitches
var fnTourOccupied = "#71934D";
var fnTourPending = "#EB9C1E";
var fnTourOverdue = "#D33A4B";
if (fnBookingID != "")
{
var fnSelector = "#site_x5F_"+fnPlotID;
$(fnSelector+" > g > path").attr("fill", fnTourOccupied);
var fnPlotPending = $(this).find('plotBooking').find('bookingPending');
var fnPlotOverdue = $(this).find('plotBooking').find('bookingOverdue');
if (fnPlotPending == "1")
{
$("#site_x5F_"+fnPlotID+" > g > path").attr("fill",fnTourPending);
}
if (fnPlotOverdue == "1")
{
$("#site_x5F_"+fnPlotID+" > g > path").attr("fill",fnTourOverdue);
}
}
});
},
error: function()
{
alert("An error occurred while processing XML file.");
}
});
});
});
Это инспектор Chrome, показывающий, что текстбыл добавлен
Теперь вот кикер.Если я скопирую весь SVG из инспектора и вставлю его в свой SVG-файл и сохраню его и загрузлю страницу test.html, то отобразятся числа вместе с присоединенными числами ajax, которые по-прежнему не отображаются.
Кто-нибудь знает, что может быть причиной