Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.08.2013, 21:02
Интересующийся
Отправить личное сообщение для Ol'kO Посмотреть профиль Найти все сообщения от Ol'kO
 
Регистрация: 14.08.2013
Сообщений: 14

Не отображается созданный элемент
Всем привет Вопрос такой. В html-файл вставлена svg-разметка (шаблон чертежа), и надо на лету там кое что рисовать. Упрощенно выглядит примерно так:
var svg = document.getElementsByTagName('svg')[0];
for (var j=0; j<points.length; j++){
    var line = document.createElement('polyline');
    line.setAttribute('stroke','red'); 
    line.setAttribute('stroke-width','2');
    line.setAttribute('points',points[j]);
    line.setAttribute('fill','none');    
    svg.appendChild(line);
}

И никакие линии не отображаются. Если посмотреть код элемента, они есть. В консоли Firebug'а они почему-то бледного цвета по сравнению с другими элементами. Хотелось бы делать через innerHTML, типа:
for (var j=0; j<points.length; j++){
	svg.innerHTML += '<polyline points="'+points[j]+'" fill="none" stroke="red" stroke-width="2" /> ;
}

Но так вообще все исчезает вместе с шаблоном.
Буду рада любой подсказке
Ответить с цитированием
  #2 (permalink)  
Старый 15.08.2013, 21:21
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Потому что нужно создавать элемент в пространстве SVG:
document.createElementNS('http://www.w3.org/2000/svg', 'polyline')
Ответить с цитированием
  #3 (permalink)  
Старый 15.08.2013, 21:37
Интересующийся
Отправить личное сообщение для Ol'kO Посмотреть профиль Найти все сообщения от Ol'kO
 
Регистрация: 14.08.2013
Сообщений: 14

Ура! спасибо большое, danik.js А с innerHTML ты случайно не знаешь как быть?)
svg.innerHTML += '<polyline xmlns="http://www.w3.org/2000/svg" points="'+points[j]+'" fill="none" stroke="red" stroke-width="2" />'
не прокатило
Ответить с цитированием
  #4 (permalink)  
Старый 21.08.2013, 13:01
Профессор
Отправить личное сообщение для Kvark Посмотреть профиль Найти все сообщения от Kvark
 
Регистрация: 02.04.2013
Сообщений: 225

наверно нужн что то типа: svg.appendChild(document.createElementNS('http://www.w3.org/2000/svg', 'polyline'))
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Drag-n-Drop - перетянуть элемент Jugo ExtJS 1 10.08.2011 19:10
Не отлавливается ДОМ -элемент, созданный динамически. Lifesaver jQuery 9 14.09.2010 14:24
Как можно удалить динамически созданный элемент Арсений Элементы интерфейса 18 08.07.2010 12:56
Созданный методом apend класс не реагирует на события не не цепляется селектором Paradise jQuery 4 14.05.2009 14:47
почему не удаляется динамически созданный элемент? magistr_bender Элементы интерфейса 5 15.09.2008 19:52