当数字未知时,有没有办法遍历所有jwplayer实例?

时间:2012-06-12 13:04:15

标签: javascript loops jwplayer

看似简单的问题,但我没有在jwplayer javascript API中看到任何引导我回答的内容。

我正在尝试遍历页面上所有jwplayer对象的实例,而不会跟踪页面上可能出现的数字。

有没有人知道这样做的方法?

我现在使用的解决方案是:

var maxPlayers = 20;
for(var i = 0; i < maxPlayers; i++) {           
    if(jwplayer(i)) {
        // execute code on jwplayer instance here
    }       
}

谢谢!

2 个答案:

答案 0 :(得分:5)

您可以继续循环,直到jwPlayer返回null:

var i = 0;
while (true) {
    var player = jwPlayer(i);
    if (!player)
        break;

    ...
    i++;
}

或者,更简洁,

var i = 0;
while (player = jwPlayer(i++)) {
    ...
}

答案 1 :(得分:1)

您需要在插入时跟踪它们,如下所示:

var players = [];
function playerReady(obj) {
    players.push(document.getElementById(obj.id));
};

然后,做一些事情:

for (var player in players) {
    players[player].sendEvent("STOP");
}