Ссылка:Vimeo код вставки (froogaloop) SQL "в то время как петля" проблема
Итак, я пытаюсь создать страницу, которая будет производить список воспроизведения Vimeo видео которые будут играть один за другим. В конце концов я попробую их скрыть и показать с помощью jquery или что-то еще, чтобы одновременно появлялся только один встроенный видеофрагмент iframe. Тем временем я просто пытаюсь получить vimeo api, чтобы дать мне контроль над каждым отдельным объектом.
Таким образом, желаемый результат сейчас будет у каждого создан кнопок управления каждым видео с его же значением $ Намх
где $ Намм является порядком в списке
Вопрос заключается в том, что в данный момент ТОЛЬКО ПОСЛЕДНЕЕ видео в списке отвечает на свои собственные команды набора кнопок.
Вот код с PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Test The Loop2</title>
<script type="text/javascript" src="http://a.vimeocdn.com/js/froogaloop2.min.js"></script>
</head>
<body>
<?
//db connect
$con = mysql_connect("d######t","db######104","no#######s");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
//db select
mysql_select_db("db337100104", $con);
$result = mysql_query("SELECT * FROM vim_playlist1");
while($row = mysql_fetch_array($result))
{
$nummy = $row['listnum'] ;
$url = $row['url'] ;
$nexty = $nummy+1 ;
//not an area of php
?>
<iframe class="vimeo" id="play<? echo $nummy ?>" src="http://player.vimeo.com/video/<? echo $row['url'] ?>?api=1&player_id=play<? echo $nummy?>" width="500" height="281" frameborder="0"></iframe>
<br />
<button id="playButton<? echo $nummy ?>">Play</button>
<button id="pauseButton<? echo $nummy ?>">Pause</button>
<button id="unloadButton<? echo $nummy ?>">Unload</button>
<script>
function ready(player_id)
{
$f('play<? echo $nummy?>').addEvent('ready', function()
{
$f('play<? echo $nummy?>').addEvent('finish', onFinish);
});
function onFinish(play<? echo $nummy?>)
{
$f('play<? echo $nexty ?>').api('play');
}
document.getElementById('playButton<? echo $nummy ?>').addEventListener('click', function() {
$f('play<? echo $nummy?>').api('play');
});
document.getElementById('pauseButton<? echo $nummy ?>').addEventListener('click', function() {
$f('play<? echo $nummy?>').api('pause');
});
document.getElementById('unloadButton<? echo $nummy ?>').addEventListener('click', function() {
$f('play<? echo $nummy?>').api('unload');
});
}
window.addEventListener('load', function() {
//Attach the ready event to the iframe
$f(document.getElementById('play<? echo $nummy?>')).addEvent('ready', ready);
});
</script>
<hr />
<?
//end of loop
}
?>
</body>
</html>
Да nummy уникален. Это звучит хорошо. Моя проблема в том, что я действительно не понимаю, какие функции предназначены для переименования и которые являются частью vimeo api. - или его абсурдно возможно, что то, что я не понимаю, является чем-то более фундаментальным в javascript - но это имеет большой смысл. Вы говорите, что это не идея решения. Есть ли у вас способ описать, как может выглядеть идеальное решение? –
@WillDelphia идеальным решением было бы определить функцию 'ready' только один раз и иметь глобальную переменную JS' nummy' (параметры, похоже, не работают здесь). И затем в вашем window.addEventlistener добавьте событие, которое устанавливает вашу переменную 'nummy'. (Возможно, есть лучшее решение, но это намного лучше, чем решение сейчас.) (И принять ответ, если это было полезно ...?) – bwoebi