Разница в стиле поведения между WebKit и Gecko - PullRequest
1 голос
/ 27 марта 2011

Я работал над веб-приложением, когда заметил какое-то странное поведение.У меня есть элемент со стилями, примененными через свойство JavaScript style.После этого я попытался удалить все стили, примененные к элементу, с помощью removeAttribute("style").Это работает только на Gecko.WebKit ничего не делает.

Я нашел обходной путь (используя setAttribute("style", "") перед удалением атрибута), но я не понимаю, почему setAttribute понадобился бы в WebKit, а не в Gecko.Почему?

У меня есть пример поведения здесь . Попробуйте закомментировать строку setAttribute и посмотрите, как поведение отличается между Gecko и WebKit.

1 Ответ

0 голосов
/ 27 марта 2011

Может ли это зависеть от того, как вы установите атрибут?

var test=document.getElementById("test");
//test.style.background="green";
test.setAttribute("style", "background: green");
test.removeAttribute("style");

Я закомментирую вторую строку, потому что это другой способ изменения этого конкретного атрибута.

Теперь четвертая строка корректно работает в webkit (с использованием google chrome dev channel), и когда я закомментирую ее, //test.removeAttribute("style"), поле остается зеленым с третьей строки.

...