У меня есть страница с svg, загружаемая через объект.Firefox svg rendering: как получить реальную позицию g?
Затем я вызвать функцию, которая загружает DIV, используя ширину, высоту, левую и верхнюю часть внутреннего элемента г
var cartina = document.getElementById(whatMap);
var cartinaContext;
cartina.addEventListener("load",function(){
cartinaContext = cartina.contentDocument;
var el = $("#mappaBase", cartinaContext)[0];
var rect = el.getBoundingClientRect();
var whatContainer = "#containerIcone"+whatMap;
$(whatContainer).css("position", "absolute");
$(whatContainer).width(rect.width);
$(whatContainer).height(rect.height);
$(whatContainer).css("left", rect.left);
$(whatContainer).css("top", rect.top);
}
Я использую getBoundingClientRect(). Я применяю div #containerIcone через svg. В Chrome он работает нормально. Проблема в Firefox: когда я загружаю страницу, ширина и высота правильно загружаются, но слева и сверху нет. Если я проверю svg с Firefox, то окажется, что элемент g помещен в фиксированное положение, а элемент , оказанный g, имеет еще один (в зависимости от размеров окна и позиции других элементов). Тем не менее, фиксированный элемент g хорошо реагирует на окно различных размеров. Разделение расположено над фиксированным контрольным положением g-элемента.
Осмотр одного и того же элемента с помощью Chrome показывает, что блок проверки элемента g каждый раз вырисовывается, когда отображается g-элемент.
Как я могу сделать эту работу в Firefox?
Лучше всего предоставить полный тест с разметкой в виде фрагмента стека (или, если не jsfiddle). –