element.setAttibute() как заставить его работать в IE?

Я устанавливаю атрибут стиля текста с помощью метода js element.setAttribute() с name=style и value="мои модификации стиля текста"

он хорошо работает в браузерах, отличных от IE..

Для того, чтобы это стало возможным, что я должен сделать?

для вашего сведения я изменяю эти атрибуты -- выравнивание текста, оформление текста, стиль шрифта, вес шрифта, размер шрифта....

Я буду счастлив, если кто-то направит меня, спасибо ..


person billu    schedule 21.02.2011    source источник
comment
Этот вопрос, возможно, тот же. Возможно, оттуда вы почерпнете идеи.   -  person erickb    schedule 21.02.2011
comment
Все перечисленные вами атрибуты являются свойствами CSS и должны быть установлены на element.style. Что-то вроде element.setAttribute('text-align') не сработает.   -  person Felix Kling    schedule 21.02.2011
comment
@Felix, он пытался с element.setAttribute('style', 'text-align: center;'), но IE не рассматривает style как атрибут, в отличие от других браузеров.   -  person Shadow Wizard Wearing Mask V2    schedule 21.02.2011


Ответы (2)


Другой способ для IE, который «сохраняет» обычный синтаксис CSS, — это свойство cssText:

element.style.cssText = "text-align: center; text-decoration: underline; font-size: 120%;";

Официальная документация: http://msdn.microsoft.com/en-us/library/ms533698(v=vs.85).aspx

person Shadow Wizard Wearing Mask V2    schedule 21.02.2011

Просто избегайте setAttribute. Он не делает ничего, что нельзя было бы сделать другими методами.

element.style.textAlign = 'left';

Например.

Тем не менее, вам почти наверняка лучше предварительно определить свои стили, а затем заставить их применяться с помощью:

element.className += 'someClass';

… или библиотеку, реализующую методы addClass и removeClass.

person Quentin    schedule 21.02.2011