Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   js - flash не работает в chrome (https://javascript.ru/forum/misc/11216-js-flash-ne-rabotaet-v-chrome.html)

Bajjy 13.08.2010 13:21

js - flash не работает в chrome
 
Здравствуйте.
Моя проблема состоит вот в чем.
На странице есть несколько флеш аудиоплееров.

<body bgcolor="#ffffff">

<object type="application/x-shockwave-flash" id="fl_player1" data="player_mp3_maxi.swf" width="200" height="20" onclick = "pl_cntrl(this);">
	<param name="wmode" value="transparent" />
	<param name="movie" value="player_mp3_maxi.swf" />
	<param name="FlashVars" value="mp3=pea.mp3&amp;width=130&amp;height=20&amp;skin=SS03-01.jpg&amp;showstop=1&amp;showslider=0&amp;bgcolor1=ffffff&amp;bgcolor2=000000&amp;buttoncolor=000000&amp;buttonovercolor=ffffff&amp;slidercolor1=cccccc&amp;slidercolor2=999999&amp;sliderovercolor=666666&amp;textcolor=0&amp;showvolume=1"/>
	<p>install flash</p>
</object>

<object type="application/x-shockwave-flash" id="fl_player2" data="player_mp3_maxi.swf" width="200" height="20" onclick = "pl_cntrl(this)">
	<param name="wmode" value="transparent" />
	<param name="movie" value="player_mp3_maxi.swf" />
	<param name="FlashVars" value="mp3=buk.mp3&amp;width=130&amp;height=20&amp;skin=SS03-01.jpg&amp;showstop=1&amp;showslider=0&amp;bgcolor1=ffffff&amp;bgcolor2=000000&amp;buttoncolor=000000&amp;buttonovercolor=ffffff&amp;slidercolor1=cccccc&amp;slidercolor2=999999&amp;sliderovercolor=666666&amp;textcolor=0&amp;showvolume=1"/>
	<p>install flash</p>
</object>

<object type="application/x-shockwave-flash" id="fl_player3" data="player_mp3_maxi.swf" width="200" height="20" onclick = "pl_cntrl(this)">
	<param name="wmode" value="transparent" />
	<param name="movie" value="player_mp3_maxi.swf" />
	<param name="FlashVars" value="mp3=pop.mp3&amp;width=130&amp;height=20&amp;skin=SS03-01.jpg&amp;showstop=1&amp;showslider=0&amp;bgcolor1=ffffff&amp;bgcolor2=000000&amp;buttoncolor=000000&amp;buttonovercolor=ffffff&amp;slidercolor1=cccccc&amp;slidercolor2=999999&amp;sliderovercolor=666666&amp;textcolor=0&amp;showvolume=1"/>
	<p>install flash</p>
</object>


При запуске музыки на одном из них, другой (если музыка была запущена) должен отключать воспроизведение.

<script type="text/javascript">

function play(fl_obj) {
    document.getElementById(fl_obj).SetVariable("player:jsPlay", "");
}
function pause(fl_obj) {
    document.getElementById(fl_obj).SetVariable("player:jsPause", "");
}
function stop(fl_obj) {
    document.getElementById(fl_obj).SetVariable("player:jsStop", "");
}
function volume(n, fl_obj) {
    document.getElementById(fl_obj).SetVariable("player:jsVolume", n);
}

function pl_cntrl (obj){
var caller = obj.getAttribute('id')
var pls = 3;

for (var i=1; i<=pls; i++){
	var fl_fl = document.getElementById("fl_player"+i).id
	if (caller != fl_fl){
		stop(fl_fl)
	}
}
}

</script>


Вышеприведенный код замечательно работает в firefox, но отказывается работать в chrome. Прошу помочь разобраться почему так происходит.

Firefox 3.6.8
Google Chrome 5.0.375.126

рони 13.08.2010 16:20

странная строчка
var fl_fl = document.getElementById("fl_player"+i).id

может так попробовать?
function pl_cntrl(obj) {
    var pls = 3;
    for (var i = 1; i <= pls; i++) {
        var fl_fl = document.getElementById("fl_player" + i);
        if (fl_fl != obj) {
            stop(fl_fl)
        }
    }
}

Bajjy 14.08.2010 22:30

да, первый раз именно так и писал, однако так не работает в фф.

Lumtesta 15.08.2010 00:07

function play(fl_obj) {
var pls = 3;
for (var i=1; i<=pls; i++){
var fl_fl = document.getElementById("fl_player"+i);
stop(fl_fl.id);
}
document.getElementById(fl_obj).SetVariable("player:jsPlay", "");

}

Bajjy 16.08.2010 11:22

Lumtesta
Ошибка: document.getElementById(fl_obj) is null
в мозилле.
в хроме не работает стоп.

Bajjy 16.08.2010 11:40

что интересно, в хроме даже вот такая простая штука
<body ondblclick="stop('fl_player3')">

тоже не работает

Bajjy 16.08.2010 17:15

ошибка где-то в js. но не вижу ее хоть убейте. прошу помощи.


Часовой пояс GMT +3, время: 21:41.