IE не понимает стилей, заданных черех setAttribute

Столкнулся с такой проблемой. Так как Я большой фрик, то всякими библиотеками Я не пользуюсь. Мне проще написать свой кроссплатформенный скрипт, а не использовать всякие jquery и прочее. Да и навыки Javascript не теряются.

Так вот. Стал вопрос о размещении на странице по центру элемента. Что делаем?

Берём, создаём новую ноду

var node = document.createElement(«div»);

и к нему присобачиваем все аттрибуты:

node.setAttribute(«style»,»…»);

так вот этот вот style у меня нифига не применился в IE. Долго ковырялся. Пришлось делать так:

  1. Создаём ноду;
  2. Устанавливаем «родные» аттрибуты (типа id, src и прочее);
  3. Добавляем ноду в документ;
  4. Выцепляем объект через getElementById();
  5. Назначаем нужные стили.

Тогда будет работать и в IE.

Полный код:

var iframe = document.createElement(«div»);
iframe.setAttribute(«id»,»newWindow»);

document.body.appendChild(iframe);

var ggg = document.getElementById(«newWindow»);
ggg.style.position = «absolute»;
ggg.style.margin = «auto»;
ggg.style.top = «20px»;
ggg.style.left = «» + (getDocWidth()/2-500) + «px»;
ggg.style.width = «1000px»;
ggg.style.height = (getDocHeight()/-40) + «px»;

Читайте также:

Комментариев нет

  1. Glupuiy_Oslik:

    Думаю имеет смысл у зензироу на сайте это запостить… Он бы оценил.

  2. dentalassistant:

    Beneficial info and excellent design you got here! I want to thank you for sharing your ideas and putting the time into the stuff you publish! Great work!

Добавить комментарий для Glupuiy_Oslik Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *