Функция загрузки jQuery SVG не совместима с IE 8 - PullRequest
0 голосов
/ 24 ноября 2010

Я загружаю SVG в HTML с помощью плагина jQuery SVG следующим образом:

<div id="map"></div>

<script type="text/javascript">
  $('#map').svg();
  var svg = $('#map').svg('get');
  svg.load('myimage.svg',{onLoad: function(){ alert('ready'); }});
</script>

Этот фрагмент кода хорошо работает в Firefox и Chrome, но не в IE (версия 8, никакая другая версия не тестировалась). Код, сгенерированный плагином, выглядит следующим образом:

 <div id="map" class="hasSVG">
   <svg version="1.1" x="0.0px" y="0.0px" ... ></svg>
 </div>

Итак ... как мне изменить код, чтобы тоже поддерживать IE? Мои ограничения: мне нужно загрузить SVG, чтобы сразу получить доступ к SVG DOM в обратном вызове onLoad .

Спасибо.

Ответы [ 2 ]

4 голосов
/ 24 ноября 2010

Просто чтобы заявить очевидное: IE8 не поддерживает svg, поэтому даже если вам удастся правильно загрузить SVG-элементы, они все равно не будут отображаться без какого-либо js shim или плагина.Вы пробовали SVGWeb?Некоторая помощь для начала работы на svgboilerplate.com .

IE9 может запустить код, хотя, вам придется протестировать и посмотреть.

0 голосов
/ 16 декабря 2010

Вы можете использовать Adobe SVG Viewer в качестве средства просмотра для IE.Это должно быть не проблема.

На сайте разработчика примеры работают нормально для всех версий IE 6-8 и FF.Если я попробую также небольшой пример этого плагина в моей среде (например, через localhost (XAMPP) или прямой доступ к файлу), он отлично работает Firefox, но не для IE.

...