SWFObject + Internet Explorer + Mootools — как их подружить?

Для начала, хочу извиниться перед своими читателями за то, что так долго не писал в блог. Не буду рассказывать о большом количестве работы — у всех так. Но, чем больше работы, тем больше тем для этого блога. Сегодняшняя заметка на довольно насущную, но не новую тему. В работе, при использовании SWFObject,  очень часто приходилось решать конфликты этого скрипта с другими скриптами. Поскольку бОльшая часть моих проектов связана с Joomla! 1.5, в которой используется библиотека Mootools, то часто приходится решать конфликт SWFObject именно со скриптами Mootools.

Все дело в том, что Internet Explorer просто отказывается открывать страницу, выдавая при этом сообщение типа:

IE dialog

Об этом баге довольно хорошо известно разработчикам IE и они сами говорят почему так происходит http://support.microsoft.com/kb/927917/ но при этом решения не предлагают, кроме того, как использовать IE8 :)

Эта проблема возникает потому, что дочерний контейнер  содержит скрипт, который пытается изменить родительский контейнер. Скрипт код пытается изменить родительский элемент с помощью либо innerHTML либо appendChild метода.

Решение этой проблемы заключается в том, чтобы сказать IE, что потомок не собирается менять своего родителя, во как...:) Сделать это можно простым методом, добавив к скрипту, который генерирует флеш атрибут defer=”defer”.

W3C определяет атрибут defer=”defer” следующим образом:

При использовании данного атрибута пользовательский агент получает информацию о том, что скрипт не будет генерировать содержимое документа (например, нет «document.write» в JavaScript) и, таким образом, агент пользователя может продолжить рендеринг.

На этом все. Коротко но, думаю, довольно ясно. Откланиваюсь, для решения очередных производственных задач, с мыслями о ном посте в скором времени. Удачи.

P>S>

Если в вашей жизни случилось значимое событие, его празднование помогут сделать еще более радужным Музыканты, которых можно найти и выбрать в Клубе Музыкантов Treda.

Холодильник liebherr cnes 38660. Встраиваемый холодильник BOSCH KIL 24441.

Подписаться на RSS Коментарии в RSS 2.0 Trackback.

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

Leave a Reply

Вы можете использовать тэги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">