Странное поведение IE: currentStyle возвращает ноль - PullRequest
5 голосов
/ 16 сентября 2010

Я испытываю странное поведение в IE8, который кажется ошибкой IE, но я не уверен.При доступе к полю currentStyle из элемента возвращается значение null.Если я просматриваю его свойства в окне просмотра, я вижу, что он определен, и я могу просматривать его элементы.Похоже, что если я вызову атрибуты перед рукой, то он вернет правильный currentStyle.Мне было интересно, если кто-нибудь видел такое поведение раньше и знает некоторые обходные пути.Это происходит при построении сетки додзё.Я также не могу переопределить это поведение JavaScript, потому что оно скрыто глубоко во внешней библиотеке Javascript (dojo), и у меня нет доступа к функции, которую нужно переопределить (функция определена в другой области функций).

1 Ответ

2 голосов
/ 11 мая 2011

Объект currentStyle в IE является асинхронным. Это означает, что стили не могут быть установлены и немедленно опрошены. Вы должны позволить IE воздействовать на ваши манипуляции, как только ваш JavaScript закончит вносить изменения. Вы можете установить TimeTimeout на 0 миллисекунд, что будет привязывать вызов функции к какой-либо очереди, и IE выполнит изменения DOM перед вызовом следующего бита JavaScript.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...