Посмотри здесь> Все знают, что с помощью JS организовывается динамическое > представление информации на HTML странице. > Новые броузеры поддерживают Dynamic Object Model(DOM). > Вот некоторые св-ва и методы DOM : getElementById, firstChild,lastChild,childNodes[index],createElement,appendChild,setAttribute,getAttribute > , > createAttribute(IE5 не подд.) и другие. > Это очень удобная модель документа, которая позволяет очень гибко изменять уже загруженную страницу, документ. > Но дело в том, что всё это работает, хоть и частично, но всё же только в IE5 и выше.Но ведь огромная часть интернета > использует ещё IE4, а то и IE3.Так вот, какая же имеется альтернатива тому, что я писал выше в IExplorer4?Как организовать гибкую работу с HTML элементами и их текстовыми узлами? Как,удалить какаой-нибудь узел, например > узел <a>Text</a>, со всеми его детками и как внедрить в имеющийся узел другой узел?Как всё это организовать в IE4? > Конечно в более новых версиях браузеров проблем нет : > RemoveChild(),RemoveNode - удаляют любые узлы в док-те > createElement(),createTextElement(),appendChild() - соответственно, создаёт узел-элемент, создаёт текстовый элемент и appendChild всё это дело добавляет в имеющийся узел. > Всё, в принципе этих методов хватает , чтобы манипулировать любыми объектами в документе! > Но, я повторюсь ещё раз, как всё тоже самое сделать в IE4? > Да, там есть dHTML методы : innerHTML,innerText,outerHTML, > outerText, но они позволяют лишь изменять уже существующие объекты, да и то как то непонятно - нельзя, например изменить текст в узле, явно ссылаясь на этот узел в JavaScript контейнере, вот например, допустим у нас есть > узел <div id="el">Text</div>, необходимо заменить Text, на Text2, > что мы должны делать? Как подсказывает здравый смысл, то естественно обратится к элементу по его ID, тоесть написать в контейнере <script>document.all.el.innerText='Text2';</script> > ан, нет! IE4 ругается и ссылается на неизвестную ему ошибку > 0000008, если память не подвела... > Делаем по другому > <ahref="javascript:"onClick="this.innerText='Text2'">Text</a>, и о чудо, изменился! Стало быть делаешь одно и тоже, но только в разных местах, а результаты разные?! > Заранее всем благодарен, тем, кто выслушал весь этот бред , а особенно тем кто даст такое же подробное разъяснение по этому поводу!
Я незнаю, что то всё как-то трудно... |