2015-08-27 2 views
0

Je veux avoir différents bip dans mon site, mais son travail ne marche passon ne joue pas et la console ne fonctionne pas

<body> 

<!-- html work--> 

    <audio id="beep-07" src="../audio/beep-07.wav" autostart="false"></audio> 
    <audio id="button-3" src="../audio/button-3.wav" autostart="false"></audio> 
    <button onclick="playsound('beep-07')">beep-07</button> 
    <button onclick="playsound('button-3')">button-3</button> 

<!-- js work--> 

<script> 
    function playsound(name) { 
     var sound = document.getElementById(name); 
     sound.play(); 
     console.log(sound,name,"1"); 
    } 
</script> 

</body> 

Est-ce que quelqu'un sait pourquoi il ne fonctionne pas comme prévu? Par ailleurs, le journal de la console n'a pas de sortie! Est-ce que quelqu'un sait pourquoi? mise à jour Oh les gars je suis tellement sry! Le problème était une simple faute de frappe dans le code! Merci pour votre aide! Je suis tellement désolé!

+0

Toute erreur dans la console? Les boutons sont dans une forme dans votre code réel? – Teemu

+0

Oui, "uncaught TypeError: Impossible de lire la propriété 'play' de null" –

+0

non il n'y a pas je pense que vous voulez dire le problème mentionné dans l'autre réponse, si oui, lisez mon commentaire :) –

Répondre

1

Essayez:

<button onclick="playsound('beep-07')">beep-07</button> 
<button onclick="playsound('button-3')">button-3</button> 

Vous pouvez lire à propos de l'imbrication des guillemets et des apostrophes sur ce stackoverflow thread.

+0

Cela ne fait aucune différence, que voulez-vous dire? Vous voulez dire que je devrais utiliser «au lieu de»? Êtes-vous sûr qu'il y a une différence entre eux? –

+0

Oh yeah! la chose est dans mon code actuel la fonction n'est pas appelée avec un bouton, son appelé dans une autre fonction avec une seule ligne: playsound ("beep-07") donc pour moi ce n'est pas le problème:) merci pour votre réponse et sry Pour la faute, je vais éditer la question maintenant;) –

+0

La différence est, en écrivant 'onclick =" playsound ("beep-07") "' se termine tout le 'onclick' trop tôt Le navigateur l'interpréterait comme' playsound (' (du début à la prochaine '' '' rencontré), ce qui est incorrect.Si vous ne l'utilisez pas comme ça, alors ce n'est pas un problème, bien sûr – ROAL

0

function playsound(name) { 
 
     var sound = document.getElementById(name); 
 
     sound.play(); 
 
    }
<audio id="beep-07" src="http://www.soundjay.com/button/beep-07.wav" autostart="false"></audio> 
 
    <audio id="button-3" src="../audio/button-3.wav" autostart="false"></audio> 
 
<button onclick="playsound('beep-07')">beep-07</button>

Essayez ceci:

function playSound() { 
 
     document.getElementById('beep-07').play(); 
 
    }
<audio id="beep-07" src="http://www.soundjay.com/button/beep-07.wav"></audio> 
 
    <button onclick="playSound()">beep-07</button> 
 

 

+0

Ouais, ça fonctionne comme ça, Je sais! Mais je veux avoir un son différent et une fonction :) –

+0

@aran: - Comme ROAL l'a dit, vous pouvez le faire en changeant simplement les guillemets. Voir la réponse éditée. Cela fonctionne –

+0

lire le commentaire sous sa réponse :) –

0

Votre code est tout à fait correct, mais s'est mal passé. Essayez cette

<button onclick="playsound('beep-07')">beep-07</button> 
<button onclick="playsound('button-3')">button-3</button> 

Merci