loop infinit cu random dintr-un playlist
Last Updated: Dec 02 2015 00:13, Started by
colombo2003
, Nov 30 2015 21:38
·
0
#1
Posted 30 November 2015 - 21:38
In folderul audio am creat un alt folder numit colinde. Aici am 20 de fisiere mp3.
Doresc ca la intrarea intr-o pagina anume, sa imi aleaga si redea o melodie. Asta se termina, sa aleaga si sa redea o alta. Si tot asa atat timp cat stau in pagina aceea (ca nu cred ca am sa le pun pe toate paginile). Eu ma gandisem la ceva de genul asta: ... ... <body> ... ... <script type="text/javascript"> var song = ["../audio/colinde/1.mp3" , "../audio/colinde/2.mp3", "../audio/colinde/3.mp3", "../audio/colinde/4.mp3", "../audio/colinde/5.mp3", "../audio/colinde/6.mp3" ]; // deocamdata am pus doar 6 piese; la cale am incercat si cu http://...., si direct /audio/.... si audio/...., si cu ../audio/... var soundFile = escape(song[Math.floor(Math.random()*song.length)]); document.write("<embed id='sound' src=' + soundFile + ' loop='true' type='audio/mpeg' controller='false' height='0' width='0'>"); </script> ... ... Ce anume nu e bine? Cum ar trebui scris sa ca faca ceea ce eu vreau? Multumesc LE: Mai obtin si eroarea "an error occurred inside a plug-in contained in this page". Am inteles ca e o eroare de IE, insa asta se intampla pe vremea lui XP, si IE6, IE 7; eu am ultima versiune 11. Nici pe alte browsere nu functioneaza. Edited by colombo2003, 30 November 2015 - 21:43. |
#3
Posted 30 November 2015 - 22:36
Daca nu vrei sa te complici, faci din cele 20 de fisiere mp3 unul singur.
|
#4
Posted 30 November 2015 - 22:52
Ceva ceva, tot e mai bine:
- F5: melodia se schimba (ok; pana acum o canta tot pe aia); - Ctrl+F5: melodia se schimba (ok); - ma duc in alta pagina si revin: melodia se schimba (ok; ca pana acum tot pe aia o canta). Nu vrea insa la terminarea unei melodii (in aceeasi pagina), sa cante o alta (o repetat tot pe aia). Daca fac un singur fisier, o sa rezulte un fisier de cine stie cati zeci de mega, pe care il va incarca foarte greu, pe cand asa, melodie, cu melodie, ma gandesc ca, poate "scap" mai ieftin? Ceva idei (ca problema tot n-am rezolvat-o)? Merci |
#5
Posted 02 December 2015 - 00:13
Folosește <audio> în loc de <embed>.
Generezi un element, îl adaugi în DOM: var player = document.createElement('audio'); document.body.appendChild(player); Asculți după evenimentul ended: player.addEventListener('ended', playRandomSong); unde playRandomSong face exact aia, play-uie un song random function playRandomSong() { var songToPlay = Math.floor(Math.random() * playlist.length); var songSrc = playlist[songToPlay]; player.setAttribute('src', songSrc); player.play(); } Funcția asta va trebui să o apelezi o dată pentru cazul inițial (la încărcarea paginii) |
Anunturi
Bun venit pe Forumul Softpedia!
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users