Как получить доступ к элементу <div>в HTML из встроенного файла .svg - PullRequest
0 голосов
/ 21 декабря 2011

У меня есть html-страница с парой элементов

в html и встроенным svg:
<html>
...
<body>
  <object id='svgid' data='sample.svg'.../>
  <div id="errorMsgs" style="display:none; height:100%; width:100%; overflow:scroll;"/>
  <div id="warnings" style="display:none; height:100%; width:100%; overflow:scroll;"/>
</body>
...
</html>

Внутри sample.svg у меня есть пара функций java-скриптов; в случае каких-либо ошибок или предупреждений эти функции должны скрывать весь svg-дисплей и отображать элемент

. Но этого не происходит в IE9. Документ DOM, доступный внутри sample.svg, похоже, ссылается на элементы SVG sample.svg, а не на элементы html
. Как я могу получить доступ к элементам
из sample.svg?

1 Ответ

1 голос
/ 22 декабря 2011

Элемент object представляет собой вложенный контекст просмотра . Вы должны быть в состоянии получить доступ к вашим элементам с помощью кода следующего содержания:

var errors = parent.document.getElementById(errorMsgs);
var warns = parent.document.getElementById(warnings);

Вот простой пример концепции . Я не могу проверить это в IE9 прямо сейчас, но я t работает в Firefox и Chrome. В IE9 это работает, но есть странная ошибка , которая означает, что загрузка SVG занимает несколько минут.

...