Каков наилучший способ получить координаты SVG, встроенные в HTML-файл? - PullRequest
0 голосов
/ 30 ноября 2011

Я встроил SVG в HTML-файл, например, так:

    <embed src="mysvg.svg" type="image/svg+xml" />

в файле svg есть прямоугольник с идентификатором "lot1a", есть ли способ получить координаты lot1a, сохранить его в переменной и использовать в качестве координат для другого файла svg. Моя главная проблема заключается в том, что, как сказал Phrogz, основной HTML (или SVG) не может получить доступ к DOM встроенного файла. Так что я могу сделать?

1 Ответ

4 голосов
/ 03 декабря 2011

Это должно работать (по крайней мере, в Firefox и Opera):

window.onload = function () {
    var svgel = document.getElementById('myembed');
    var svg;
    if (typeof svgel.getSVGDocument !== 'undefined') {
        svg = svgel.getSVGDocument();
    } else {
        svg = svgel.contentDocument;
    }
    var rect = svg.getElementById('lot1a');
    window.alert('x:' + rect.getAttribute('x') + ' y:' + rect.getAttribute('y'));
}

Chrome содержит ошибку , но вы можете попробовать эти обходные пути .

...