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!

Добавить комментарий

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