Forum Webscript.Ru
Программирование => JavaScript & JScript => Тема начата: Lucent от 30 Января 2007, 16:14:18
-
Есть картинка в тексте (без div, span возле нее).
Необходимо динамически создать (над/под ней ) новый элемент, скажем DIV c текстом.
пробую так, но не получается
насколько я понимаю, img - не контейнер и добавить дочерний узел не получится
-
Действительно, в справке написано, что appendChild() действует только если нужный элемент (img в данном случае) способен contain child nodes (иметь детей?...)
Альтернативный вариант с абсолютным позиционированием
-
Lucent
Да, создание в base_object (только все же body, наверно) сработает.
Некрасивый вариант img.outerHTML += \'<..>\' не подойдет в даном случае?
-
CGVictor
outerHTML - NN n/a (то есть только для IE)
-
можно после картинки сделать insertAfter, вставить туда DIV с position: relative; width: imgOffestWidth; height: imgOffsetHeight; left: -imgOffsetWidth; top: -imgOffsetHeight;
В самом простом случае это должно сработать.
Можно присвоить всем этим картинкам класс и на onload заменять их на дивы с соответствующим бэкграундом.
Можно вставлять перед картинкой див, а потом аппендить в этот див картинку (тогда она исчезнет из своего первоначального места)
Вариантов-то тонна :)
-
А у меня вот какая проблема: есть скрипт добавляющий и удаляющий элементы input. В IE почему-то он не работает. В чём может быть проблема?
-
В начале функции поменяй
if (document.all) {
var tbody = document.getElementById(\'tb_items\').childNodes[0];
} else {
var tbody = document.getElementById(\'tb_items\');
}
-
andymc
СУПЕР!!! Спасибо!!! Заработало!!!