Autor Zpráva
ozzy
Profil *
Chci přehrávat .asx playlisty přímo na stránce tagy <object.. a <embed..

rád bych použil tento kód pro spuštění:

<a href="javascript:document.embeds['id'].play()"><img src="play.gif"></a>
<a href="javascript:document.embeds['id'].stop()"><img src="stop.gif"></a>

v IE to funguje (stejně jako <a href="javascript:document.jmeno.play()">start</a>),
v FF to jako vždy nefunguje a jiné řešení neznám, chci použít vlastní grafiku.
zbystr
Profil *
nevim zda je problem v tomto, ale co zkusit pouzit getElementById()??

jinak se mi libi tvoje v FF jako vzdy nefunguje LOL
melo by to byt naopak .... v IE opet nefunguje ..... heheh
Joker
Profil
zbystr
jinak se mi libi tvoje v FF jako vzdy nefunguje LOL
:-)
To je právě ten rozdíl- lidi píšící "standardním" kódem nadávají, co všechno nefunguje v IE. Lidi píšící "Microsoftím" kódem nadávají, co všechno nejde ve Firefoxu... do doby, než zjistí, že kromě Firefoxu jsou spousty dalších prohlížečů, kde to nefunguje taky :-)

Jinak javascript:document.jmeno.play() je styl zápisu z IE5, dnes se používá document.getElementById().
zbystr
Profil *
to Joker:
vem rozdilnost mezi FF, Opera, Safari. Nerikam, ze jsou co se tyka JS totozne, ale rozdil je minimalni ....oproti tyto browsery vs IE
Chamurappi
Profil
Reaguji na zbystra a Jokera:
Vedle. Kolekce document.embeds v Mozille funguje. Skoro všechny kolekce document.images a spol. vynalezl Netscape (kromě document.all), stejně jako element <embed>. Kromě Firefoxu a Exploreru a Opery fungují vesměs všude.

Reaguji na ozzyho:
Mozilla nezpřístupňuje metody vložených objektů skriptům, proto ti nefungují metody play a stop. Nemyslím si, že najdeš řešení.
zbystr
Profil *
Chamurappi
ok .... nebyl jsem si jisty, zda umoznuje pristup k embed :)
ozzy
Profil *
Mozilla nezpřístupňuje metody vložených objektů skriptům

to znamená, že FF narozdíl od IE neumí ovládat zásuvné moduly? Opravdu není jiné řešení, než to, že se modul přehrávače pro spuštění playlistu otevřít v novém okně?
Davex
Profil
Podle výsledků mých experimentů zpřístupňuje ve Firefoxu metody controls.play() i controls.stop() například WMP Firefox Plugin. U uživatelů, kteří nemají vhodný plugin to fungovat nemusí.
ozzy
Profil *
Našel jsem tento script, používá se v něm document.getElementById, jak psal Joker, ale moc nefunguje:

<script type="text/javascript">
function play(media){
document.getElementById('mediaplayer').innerHTML=
'<object classid="clsid:22d6f312-b0f6-11d0-94ab-0080c74c7e95"'
+'type="application/x-oleobject" width="320" height="285">'
+'<param name="showControls" value="false">'
+'<param name="fileName" value="'+media+'">'
+'<embed type="application/x-mplayer2" width="320" height="285"'
+'showcontrols="false" src="'+media+'"><\/embed><\/object>'
}
</script>

<ul>
<li><a onclick="play(this.href);return false" href="">Source 1</a></li>
<li><a onclick="play(this.href);return false" href="">Source 2</a></li>
<li><a onclick="play(this.href);return false" href="">Source 3</a></li>
</ul>

reaguje jak FF tak i IE, jen to chce asi vyladit!
ozzy
Profil *
Tak ten scrip vypadá takto, použil jsem <fieldset> seznam

<script language="JavaScript">
<!--
function initiateStation(){
toPlay = document.getElementById('thisStation')
toPlay = toPlay.options[toPlay.options.selectedIndex].value
newRadio = "";
newRadio += "<OBJECT id='Player' height='0' width='0' CLASSID='CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6'>"
newRadio += "<PARAM name='URL' value='" + toPlay + "' id='insert_1'>"
newRadio += "<PARAM name='uiMode' value='none'>"
newRadio += "<PARAM name='ShowControls' value='0'>"
newRadio += "<PARAM name='ShowStatusBar' value='0'>"
newRadio += "<PARAM name='ShowDisplay' value='0'>"
newRadio += "<EMBED type='application/x-mplayer2' "
newRadio += "pluginspage = 'http://www.microsoft.com/Windows/MediaPlayer/' "
newRadio += "SRC='" + toPlay + "' "
newRadio += "name='Player' "
newRadio += "height='0' "
newRadio += "width='0' "
newRadio += "AutoStart='0' "
newRadio += "showcontrols='0' "
newRadio += "showstatusbar='0' "
newRadio += "showdisplay='0' "
newRadio += "id='insert_2'>"
newRadio += "</EMBED>"
newRadio += "</OBJECT>"
document.getElementById('radio').innerHTML = newRadio
}
-->
</script>
<fieldset>
<center>
<select id='thisStation'>
<optgroup label="Seznam">
<option value='http://...asx'>The Systems</option>
<option value='http://...asx'>Romance</option>
<option value='http://...asx'>další playlist</option>
<option value='http://...asx'>atd.</option>
</optgroup>
</select>
<br />
<br />
<input type='image' src='img/play.gif' onclick='initiateStation()' />
<input type='image' src='img/pause.gif' onclick='javascript:Player.controls.pause()' />
<input type='image' src='img/pause-play.gif' onclick='javascript:Player.controls.play()' />
<input type='image' src='img/stop.gif' onclick='javascript:Player.controls.stop()' />
<br />
<br /><!-- Volume -->
<a href='#' onClick='javascript:Player.settings.volume= 0;'>0</a>
<a href='#' onClick='javascript:Player.settings.volume= 10;'>1</a>
<a href='#' onClick='javascript:Player.settings.volume= 20;'>2</a>
<a href='#' onClick='javascript:Player.settings.volume= 30;'>3</a>
<a href='#' onClick='javascript:Player.settings.volume= 40;'>4</a>
<a href='#' onClick='javascript:Player.settings.volume= 50;'>5</a>
<a href='#' onClick='javascript:Player.settings.volume= 60;'>6</a>
<a href='#' onClick='javascript:Player.settings.volume= 70;'>7</a>
<a href='#' onClick='javascript:Player.settings.volume= 80;'>8</a>
<a href='#' onClick='javascript:Player.settings.volume= 90;'>9</a>
<a href='#' onClick='javascript:Player.settings.volume= 100;'>10</a>
</center>
</fieldset>
<div id='radio'>
<!-- pro neviditelnost <object> style='visibility: hidden' -->
<object id='Player' height='0' width='0' CLASSID='CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6'>
<param name='URL' value='' id='insert_1'>
<param name='uiMode' value='none'>
<param name='ShowControls' value='0'>
<param name='ShowStatusBar' value='0'>
<param name='ShowDisplay' value='0'>
<embed type='application/x-mplayer2' pluginspage = 'http://www.microsoft.com/Windows/MediaPlayer/'
SRC='' name='Player' height='0' width='0' AutoStart='0' showcontrols='0' showstatusbar='0'
showdisplay='0' id='insert_2'>
</embed>
</object>
</div>

pro FF playlist.asx lze také použít <embed type='video/x-ms-asf'




JExistuje také verze pro XHTML - objekt v objektu:

<object classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"
id="jmeno" width="0" height="0" style="visibility: hidden">
<param name="url" value="http://...asx" />
<param name="src" value="http://...asx" />
<param name="autostart" value="false" />
<param name="showcontrols" value="true" />
<!--[if !IE]>-->
<object type="video/x-ms-asf" data="http://...asx"
name="jmeno" width="0" height="0">
<param name="src" value="http://...asx" />
<param name="autostart" value="false" />
<param name="controller" value="true" />
</object>
<!--<![endif]-->
</object>

<br />

<a href="#" onclick="javascript: jmeno.controls.play();">Start</a>
<a href="#" onclick="javascript: jmeno.controls.pause();">Pause</a>
<a href="#" onclick="javascript: jmeno.controls.stop();">Stop</a>


Vnořený <object> je (díky Lachlane) <!--[if !IE]>--> a <!--<![endif]--> pro IE neviditelný.
Tonino
Profil *
Poradí nekdo kde seženu zásuvný modul application/x-mplayer2 pro operu

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0