Эпопея с рамками вокруг флеша продолжается…

Сперва обнаружилось, что код, который я приводил в прошлом посте не работает в 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)
Продолжение следует…

Technorati Tags: , ,

Flash, ActiveX & IE update. part II
Tagged on:

20 thoughts on “Flash, ActiveX & IE update. part II

  • 02.05.2006 at 10:19
    Permalink

    все получилось в лучшем виде … спасибо огромное

    ЗЫ: вот уж эти мелкомягкие недомерки 8-(

  • 02.05.2006 at 14:24
    Permalink

    а почему не работают кнопки когда жмешь на них, там написан в акшин скрипт javascript:mywindow=window.open….. бла бла
    короче оы не фуричить что делать подскажите

  • 02.05.2006 at 14:28
    Permalink

    то есть JS не пашет в Flash что ли
    помогите плизз
    вот код на кнопке
    getURL(“javascript:еуые=window.open(‘https://#.htm,’toolbar=0,top=0,left=0,width=800,height=650,location=0,directories=0,status=1,menubar=0,scrollbars=1,resizable=1,copyhistory=1’);void(0);”);
    она не пашет
    а когда пишешь без javascript
    getURL(“https://#.htm”,”_blank”);
    работает в чем дело?

  • 03.05.2006 at 07:19
    Permalink

    помогите плизз
    вот код на кнопке
    getURL(”javascript:test=window.open(’https://test.htm,’toolbar=0,top=0,left=0,width=800,height=650,location=0,directories=0,status=1,menubar=0,scrollbars=1,resizable=1,copyhistory=1′);void(0);”);
    она не пашет
    а когда пишешь без javascript
    getURL(”https://test.htm”,”_blank”);
    работает в чем дело?
    с этим обновлением IE не пашет JS в Flash
    Как быть?

    Comment by student | May 2, 2006

    Leave a comment
    Name

    e-Mail

    Website

    « Previous |

  • 03.05.2006 at 08:58
    Permalink

    2student:
    флеша под рукой сейчас нет, но конструкция вида getURL(‘javascript:openWindow()’); (где openWindow – функция объявленная непосредственно в js-файле ) работает нормально.

    а с твоим кодом попробую чуть позже, когда доберусь до флеша.

    P.S. а флешка не работает только в IE ? или в других браузерах тоже не работает ? сильно смущает “copyhistory”….

  • 04.05.2006 at 18:10
    Permalink

    Блин, а как быть если у меня флэш-кнопка изначально проработана так, что я в html подставлял для нее url и текст на ней ну типа .. бла бла бла “images/menu_button.swf?t=ГЛАВНАЯ&l=index.htm”. Если использовать алгоритм предложенный MiRacLe, а также теми кто предлагает “Путь самурая”, то скрипт безусловно фигачит саму кнопку, но на этом конец, ни url’a ни надписи на ней (хотя может я чего не так делаю 🙁 ). Есть ли возможность, чтобы кнопка работала в прежнем режиме, ну т.е. чтобы ей можно было бы присваивать значения url и надпись на ней из html, но при этом используя предлагаемые уважаемыми людьми алгоритм? Я конечно выход нашел вроде .. но этомега путь самурая … каждой кнопке во флэше присваивать url и делать тупо в нем же надпись именно для этой кнопки … но это жесть … 😎

  • 05.05.2006 at 06:16
    Permalink

    2 MIRacle спасибо заранее что расмотришь мою проблемму.
    А мне не нужно в других хотябы в IE работало бы. А твой код пашет ушла рамка tooltip. Но осталась вон та проблемма с кнопкой.

  • 20.05.2006 at 12:04
    Permalink

    2student:
    сорри за такой большой “перерыв”(праздники,работа,отдых….) – проблема твоя решается 2-умя способами (оба требуют перекомпиляции swf-ок)

    1. сделать stop(); а потом getURL(‘javascript: window.open(“http://domain.tld/page.ext”,”windowName”,”window_feature=value”)’);

    2. вызывать popup как
    getURL(‘javascript:void window.open(“http://domain.tld/page.ext”,”windowName”,”window_feature=value”)’);

  • 20.05.2006 at 12:12
    Permalink

    2student:
    обрати кстати внимание – 2-ой параметр функции window.open – это имя окна, параметры идут третьим!

  • 20.05.2006 at 12:13
    Permalink

    znatok Ne – можно быть уверенным, что flashvars (то что после знака вопроса в src мувика) у тебя одинаковые в object и в embed ?

    а ещё лучше – выложи куда-нибудь пример "неработающего"  кода…

  • 24.05.2006 at 15:57
    Permalink

    завтра утром гляну.
    скорее всего сделаю то что после знака вопроса в обычные flashvars – должно получиться.

    znatok Ne – пробуй версию 6.0, на тестовых примерах у меня отработало (во флешках переменные доступны как _root.t и _root.l)

  • 25.05.2006 at 13:36
    Permalink

    MiRacLe … видимо ламерство мое сверх меры 🙁 … но рамка у меня все равно на месте … чтобы было понятно о чем я говорю .. и может быть так проще будет найти мою ошибку .. вот тут пример страницы с кнопкой

    А вот тут архив с исходником

    И спасибо тебе большое, что откликаешься на решение проблемы … 😉

  • 25.05.2006 at 15:12
    Permalink

    1. Рамок не вижу… (какая версия IE используется?)
    2. в архиве (и на странице) “старая” (0.4) версия flash_replacer – последняя версия 0.6

    3. вот скриншот твоей кнопки – без рамок.

    может быть версия IE ? какая винда? и винда ли? ;o)

  • 27.05.2006 at 10:23
    Permalink

    MiRacLe

    ты прав ушла рамка .. (вот же странно … но она ж там была :/) …

    А вообще спасибо тебе огроменное … человечище .. помог решить важную проблему для меня 😉

    PS: винда ХР SP2
    IE 6.0.2900.2180

  • 01.06.2006 at 16:00
    Permalink

    MiRacLe … так просто не уйти … мне 🙂 .. вобщем проблема с твоим скриптом следующая … в ХР (SP2 и IE 6.0.2900.2180) страница открывается и по прошествии пары секунд IE выдает ошибку и страница в срочном порядке закрывается.
    В локальном режиме (на машине если запускать иннет страницы на харде размещенные) таже фигня … скрипт убираю из тела страницы (ну да конечно сразу возвращается рамка 😎 ) и больше не выбрасывает … поэтому думаю трабл в скрипте … :-/
    ЗЫ: А теоретически может твой скрипт каким то образом конфликтовать с иными скриптами прописанными в теле html страницы (я в общем то не супер спец в формулировках, поэтому последнее может и вообще не возможно и я порю глупость 😎 )
    вот скриншот ошибки

  • 01.06.2006 at 16:02
    Permalink

    Если скриншот не откроется .. убери из адреса .. “www” 🙂

  • 01.06.2006 at 18:24
    Permalink

    да есть такое, многие жалуются (даже сам пару раз попадал на такое)

    тут не в конфликте скриптов дело – IE падает из-за утечек памяти при переписывании outerHTML… пробую с этим бороться – как только решение найду – выложу сюда.

  • Pingback:Я проcто Чудо {вище} » Blog Archive » Flash ActiveX & IE update

Leave a Reply