Показать сообщение отдельно
Старый 17.05.2009, 11:05
МихаилК вне форума Посмотреть профиль Отправить личное сообщение для МихаилК Найти все сообщения от МихаилК
  № 1  
Ответить с цитированием
МихаилК
 
Аватар для МихаилК

Регистрация: Aug 2001
Адрес: Россия, С.-Петербург
Сообщений: 10
По умолчанию Как определить наличие flash-плеера у пользователя в IE8?

Есть штатный JavaScript от адобе, который проверяет у пользователя наличие флэш-плеера и запускает флэшку или подставляет статичный контент. При этом проверка проводится в ИЕ достаточно банально, скрипт пытается создать ActiveX-объект для всех версий флэша последовательно (видел даже цикл по версиям от 24 до 0):

Код:
	if (!version)
	{
		try {
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.<сюда подставляется номер версии>");
			version = axo.GetVariable("$version");
		} catch (e) {
		}
	}
В IE8 попытка создать объект таким образом устойчиво выдает false. Соответственно, скрипт решает, что плеера для флэша нет и не запускает флэшку. Причем даже выставление в метатегах режима совместимости с IE7 проблемы не решает.

Сам по себе плеер стоит и флэшка, если ствить ее без изысков, проигрывается.

Ни у кого нет решения?