Эпопея с рамками вокруг флеша продолжается…
Сперва обнаружилось, что код, который я приводил в прошлом посте не работает в IE версий ниже 6-ой (точнее он работал, но не совсем так как задумано ;o) ) . Пришлось его немного подточить – flashvars теперь беруться не из тега PARAM, а из свойства altHTML у тега OBJECT (это свойство доступно только в IE и содержит html код с тегом EMBED), и вот код работает в IE 5.5 и IE5… но…
Но были замечены падения браузеров (5-го и 5.5) после переписывания outerHTML…
С другой стороны рамки вокруг ActiveX в этих браузерах мною замечены не были… посему код flash_replacer.js теперь исполняется только в IE6 (седьмой покамест beta – на него не рассчитываю).
Собственно код находиться здесь. (v.0.3.1) (v.0.4)(v.0.4.1)(v.0.5)(v.0.5.1)(v.0.6)(v.0.7)
Нуждающиеся в нём могут качать и пользоваться.
Знающие могут помочь мне с ответом на вопрос – в IE версий ниже 6-ой рамки есть или нету?
Баги и вообще любые фидбеки приветствуются…
UPDATE:
Исправил маленький “глюк”, переименовал файл – теперь последняя версия называется flash_replacer_latest.js (находится по ссылке выше). Просьба к товарищам ссылающимся на данный файл поменять ссылку на файл (заранее спасибо за изменения и за ссылку вообще ;o) )
27.04 – Поправил проверку classid и сделал аналогичный прогон по embed-ам вне object-а
11.05 – Поправил регулярку, с помощью которой вытаскивались flashvars(они могут быть многострочными)
23.05 – удаляю outerHTML на window.unload (ie иногда падал из-за memory leak), flash_replacer теперь запускается только в winxp ie6+. Подробнее чуть позже опишу в третьей части “эпопеи”…
24.05 – workaround для flashvars, которые вставляются как get-параметры в src мувика
30.06 – теперь используется SWFObject для внедрения “переписанных флешек”, в связи с этим баги с падением IE исчезли, но “маленько” уменьшилась функциональность – восстановлю на днях работу c embed и flashvars, которые передаются get-параметрами в src мувика
Уже месяц висит draft-пост про “завершение эпопеи”… но похоже конца этой “эпопеи” нет и не предвидится ;o)
Продолжение следует…