Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Добавление атрибутов к тегам


Автор: agx 25.9.2005, 12:52
Доброго времени суток!
Вопрос в следующем: при загрузке страницы я содаю теги и наполняю их содержанием при помощи document.createElement(), к примеру, var img=document.createElement("img");
Затем я хочу отобразить эту картинку на странице при нажатии на кнопку, выполнив такой оператор: cont.appendChild(img);
Еще я хочу, чтобы изображение реагировало на щелчок мыши: img.setAttribute("onclick","alert('Hello!!!');"); (кроме этого атрибута я задаю и некоторые другие, src, class и т.п.)
В Мозилле весь этот код отлично работает, но в IE изображение на нажатие не реагирует. Более того, из всех моих img.setAttribute() эффект имеет только тот, который задает атрибут src, остальные - class, style - как будто бы игнорируются.
Pleace, подскажите, в чем здесь проблема?

Автор: Sardar 25.9.2005, 14:23
Потому что в тегах это аттринуты, а когда ты работаешь с элементами, это уже обьекты. class задаёться через className, style через style.textCSS, ну а события через DOM'овские addEventListener (ИЕ не поддерживает), либо традиционно obj.onsomeevent=event_handler;

Автор: agx 26.9.2005, 09:10
Sardar Спасибо!

Автор: agx 26.9.2005, 09:29
У меня тут еще один вопрос появился.
К примеру, у меня есть обработчик события:
Код

function hello(text)
    {
    alert(text+'!!!');
    }

И есть элемент, которому я назанчаю этот обработчик:
Код

var node=document.createElement('span');
node.onclick=hello;

А как мне в этот обработчик передать параметр? Или это нельзя сделать и нужно искать обходные пути?

Автор: Zeroglif 26.9.2005, 15:12
Код

node.onclick=function(){hello('text_iz_hello')};

Автор: Aliance 26.9.2005, 16:15
Цитата(agx @ 26.9.2005, 10:29)
У меня тут еще один вопрос появился.

Еще один - создавай новую тему. И прочти Правила форума: http://forum.vingrad.ru/index.php?s=&act=SR&f=27
Закрываю.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)