Ik probeer meerdere audioplayers op 1 pagina te laden(origineel https://codepen.io/jhereg00/pen/WjQPdW). Ik heb het handmatig getest, en dit werkt. Wanneer ik het dynamisch wil maken loop ik tegen het volgende aan:
Via php heb ik een array, die ik heb omgezet naar een variabele voor JavaScript. De variabele bevat verschillende url's naar audiobestanden.
<script type=text/javascript>
var audiobestand = <?php echo json_encode( $data ) ?>;
</script>
Door middel van een loop probeer ik de url's in JavaScript te laden, dat volgens mij nu goed gaat. Echter de audioplayer wordt in de HTML geladen d.m.v.
appendTo(playerContainer1). Gezien ik meerdere audiobestanden heb, wil ik graag dat de class 'playerContainer1' oploopt naar 'playerContainer9'. In het volgende stukje code zie je dat ik een counter gemaakt heb. Deze wil ik graag aanroepen op de plek van de 1 in 'playerContainer1'. ik heb bijvoorbeeld geprobeerd om er cap.appendTo(playerContainer.increment()); van te maken maar dat kan niet. Heeft er iemand een idee of dit uberhaupt mogelijk is, en zo niet, hoe zou ik dit het best kunnen aanpakken?
<script type="text/javascript">
var counter = 0;
for(i in audiobestand){
var increment = function(){
return counter=counter+1;
}
var cap = new CircleAudioPlayer({
audio: audiobestand[i],
size: 120,
borderWidth: 8
});
cap.appendTo(playerContainer1);
}
</script>
Hopelijk heb ik het zo een beetje duidelijk uitgelegd.
Groet,
Nien