Уважаемые хаброчане, :)
Прощу прощения по повтор. С первой попытки что-то у меня не получилось опубликовать топик целиком. Видать, демоны помешали…
Вот оригинал:
Всем доброе время суток.
Решил написать данный топик по нескольким причинам:
1) Есть раздел, посвященный Firefox (моему любимому браузеру). О нем много написано. И, в основном, только хорошее. Оно ведь и не удивительно. Он как будто создан для программистов.
2) Нет раздела посвященного багам IE. Не знаю за что его любят .Net разработчики, но я (Java developer) его ненавижу. Но несмотря ни на что, он остается самым популярным браузером (больше 50% это точно). Оно и не удивительно.
Так вот. Хочу поделиться багом, который нашел в IE7. Возможно, многие о нем знают, но тем не менее. Суть вот в чем. Участвовал в одном проекте (Java, Seam, Tomcat, Wowza). Последний сервер (написанный на Java ) служит для Flash. У меня есть страничка, которая содержит флешину. В этой флешке, есть обработчик события onDisconneсt, который дергает некий метод на это сервере. Так вот, какое у меня было удивление, когда выяснилось, что при переходе на любую страничку данного сайта (т.е. сессия оставалась той же) этот метод не вызывался! А было это замечено вот как. На флешине проигрывался звук. И при переходе, он не умолкал, т.е. продолжал работать. Страничка была .xhtml, а следовательно flash был встроен только через тег
Прощу прощения по повтор. С первой попытки что-то у меня не получилось опубликовать топик целиком. Видать, демоны помешали…
Вот оригинал:
Всем доброе время суток.
Решил написать данный топик по нескольким причинам:
1) Есть раздел, посвященный Firefox (моему любимому браузеру). О нем много написано. И, в основном, только хорошее. Оно ведь и не удивительно. Он как будто создан для программистов.
2) Нет раздела посвященного багам IE. Не знаю за что его любят .Net разработчики, но я (Java developer) его ненавижу. Но несмотря ни на что, он остается самым популярным браузером (больше 50% это точно). Оно и не удивительно.
Так вот. Хочу поделиться багом, который нашел в IE7. Возможно, многие о нем знают, но тем не менее. Суть вот в чем. Участвовал в одном проекте (Java, Seam, Tomcat, Wowza). Последний сервер (написанный на Java ) служит для Flash. У меня есть страничка, которая содержит флешину. В этой флешке, есть обработчик события onDisconneсt, который дергает некий метод на это сервере. Так вот, какое у меня было удивление, когда выяснилось, что при переходе на любую страничку данного сайта (т.е. сессия оставалась той же) этот метод не вызывался! А было это замечено вот как. На флешине проигрывался звук. И при переходе, он не умолкал, т.е. продолжал работать. Страничка была .xhtml, а следовательно flash был встроен только через тег
, т.к. тег xhtml не поддреживает.
Немного погуглив, выяснилось, что действительно в IE7 есть такая проблема. Утечка памяти. Таким образом, флешина жила своей жизнью где-то... В любом другом браузере (Firefox, Opera, Chrome, IE6) такой проблемы не было замечено.
Еще немного погуглив, было найдено решение данной проблемы. Она решалась с помощью javascript. С помощью копмонента гугла swfobject.
Код примерно следующий:
Зачем, в нужном месте пишем следующий javascript:
И в том месте, где нужно вставить саму флешину пишем
Вот собственно и все решение проблемы. Данный вариант можно рассматривать как одни из многих. Хотелось бы узнать Ваши. В любом случае, может кому-то пригодиться. Хотелось бы узнать о других багах. Возможно не только в IE. И как с ними бороться. :)