jQuery + html5 ... přehrávání zvuku při klikání na oprázky.
Ahoj. Mám problém a už ho žešim dva dny a nemůžu se dobrat konce. Potřeboval bych script kterej přehraje zvuk, když kliknu na obrázek myší, ale v okamžiku kdy pustím tlačítko myši, tak se tento zvuk přehrávat přestane a začne se přehrávat zvuk jiný. (píšu si na web piáno a nechci používat něčí stažené) Mám zatim tohle :
<section id="two">
<div class="inside">
<div id="nav-two" class="nav">
<audio id="beep-two">
<source src="piano/E5.mp3" controls></source>
<source src="piano/E5.ogg" controls></source>
Váš prohlížeč toto bohužel nepodpořil. :o/ Pořiďte si nový.
</audio>
<a
onMouseOver="self.document['obrazek3'].src='piano/a_001.png'"
onMouseOut="self.document['obrazek3'].src='piano/001.png';"
onMouseDown="self.document['obrazek3'].src='piano/b_001.png';">
<img id="obrazek_id_3" name="obrazek3" style="margin-left: 100px; position: absolute;" hspace=5 src="piano/001.png" border="0">
</a>
</div>
<script>$("#nav-two a")
.each(function(i) {
if (i != 0) {
$("#beep-two")
.clone()
.attr("id", "beep-two" + i)
.appendTo($(this).parent());
}
$(this).data("beeper", i);
})
.mousedown(function() {
$("#beep-two" + $(this).data("beeper"))[0].play();
});
$("#beep-two").attr("id", "beep-two0");</script>
</div>
</section>
Script pro jednu klávesu, ale problém je v tom že už jsem vyzkoušel asi 70 variant, ale neumím udělat to aby zvuk přestal přehrávat pokud tlačítko pustím. Implementoval jsem tam už všechno co šlo, ale asi to skládám syntakticky špatně. (.mouseup, .mousedown) Nedaří se mi na to našroubovat .currentTime=0; aby to fungovalo správně.
Nevyřešil by to někdo?? Psal jsem už na 8 světovejch foor tady na foora nic. Nikdo neví nic já už nemůžu.
Nastavenie currentTime funguje len vtedy, ak server podporuje streamovanie (byte range requesty). Potom by ti malo fungovať toto:
Prípadne môžeš skúsiť nahradiť ten audio element klonom, vtedy sa to audio stiahne znova a začne od začiatku (ak by si nastavil správne hlavičky pre kešovanie, tak by to nemuselo sťahovať to audio znova):
tak to právě, že nefunguje pokud jste to myslel takhle :
Nastavenie currentTime funguje len vtedy, ak server podporuje streamovanie (byte range requesty).
já měl za to že ty zvuky se přenesou na stranu klienta a tam už jsou... takže to pak nemá se serverem nic společného ne?? Ale taky je možný že v tom mám zmatek. jinak je to můj server takže to tak klidně můžu nastavit jak chci. ovšem myslím že to podporuje protože třeba tohle :
... mi funguje v pohodě.
OPRAVA : šaptně jsem to sem okopírovat... nicméně to nefunguje ani takhto :
Případně asi by bylo lepší kdyby to fungovalo tak že při každym kliknutí se ten zvuk přehraje od znova... ale to se mi taky nedaří udělat... vždycky to čeká až do té doby než ten co hraje dohraje.
aha
teď musim přemýšlet o tom jestli je to ale ideální
Tú bodkočiarku pred ".mouseup" tam dúfam nemáš, lebo s ňou to fungovať nemôže (syntaktická chyba). Ja som to skúšal v Chrome iba s lokálnym node.js serverom a nastavenie audio.currentTime mi tam nefungovalo.