Хорошо, я пытаюсь воспроизвести флэш-видео на панели YUI. У меня были проблемы с тем, чтобы заставить его работать в IE. Исправил это, но затем это заставило это не работать в FireFox. Я потратил ЧАСЫ на отладку, и вот что я нашел: мой документ XSLT вызывает проблему! Вот оно:
<div id="mediaDisplay">
<xsl:if test="//video/videoFile">
<div class="flash" id="flashVid">
<noscript>
<object type="application/x-shockwave-flash" data="flash/playerVar1.2.swf" width="525" height="425" id="MediaEmbedObject" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000">
<param name="movie" value="flash/playerVar1.2.swf"/>
<param name="salign" value="lt"/>
<param name="loop" value="false"/>
<param name="menu" value="false"/>
<param name="allowFullScreen" value="true"/>
<param name="AutoPlay" value="true"/>
<param name="FlashVars" value="movieSrc={$videouri}"/>
<embed AutoPlay="true" src="flash/playerVar1.2.swf" quality="high" name="videogalleryObject" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" width="525" height="425" id="videogalleryObject" FlashVars="{$videouri}" allowFullScreen="true">
</embed>
</object>
</noscript>
<form action="" name="flashForm">
<fieldset>
<input type="hidden" name="flashDivId" value="flashVid"/>
<input type="hidden" name="flashWidth" value="525"/>
<input type="hidden" name="flashHeight" value="425"/>
<input type="hidden" name="flashUrl" value="flash/playerVar1.2.swf"/>
<input id="playingFlash" type="hidden" name="FlashVars" value="{$videouri}"/>
<input type="hidden" name="flashName" value="Flash"/>
<input type="hidden" name="flashAltText" value="{//video/altText}"/>
<input type="hidden" name="allowScriptAccess" value="always"/>
<input type="hidden" name="allowFullScreen" value="true"/>
</fieldset>
</form>
</div>
</xsl:if>
</div>
Теперь, как это написано здесь, это работает в FireFox. Чтобы заставить его работать в IE, единственная вещь, которая фактически сделала трюк, это удаление атрибута data="flash/playerVar1.2.swf"
из тега <object>
и изменение его на value="flash/playerVar1.2.swf"
. Это дает мне полную функциональность в IE, но ничего в FireFox. Я бы дал вам ссылку, чтобы убедиться в этом, но она все еще в QA. У кого-нибудь есть способ заставить это работать на всех платформах. Есть ли способ запустить встроенное обнаружение браузера в моем XSLT и затем дать ему условия? Любые и все идеи будут оценены. Спасибо!