Bouton HTML pour produire un son

Fermé
lapuce - 28 nov. 2008 à 16:19
XanderS2X Messages postés 430 Date d'inscription jeudi 6 novembre 2008 Statut Membre Dernière intervention 1 février 2009 - 29 nov. 2008 à 02:06
Bonjour,

Je tente d'insérer un bouton dans un document HTML qui provoque le déclenchement d'un son. J'ai déjà du code fonctionnel qui contient les lignes suivantes:

<script src='play.js' language='JavaScript' type='text/javascript'></script>

<embed src='son.wav' autostart=false width=0 height=0 id='sound1' enablejavascript='true'>

<input type="button" value="Entendre la question" onClick="EvalSound('sound1')">

et le script java contient le code suivant:

function EvalSound(soundobj)
{
var thissound=document.getElementById(soundobj);
thissound.Play();
}

Maintenant, je cherche à transformer mon bouton. Je ne veux plus utiliser la forme <input type='button'> mais plutôt le nouveau <button>. J'ai fait plusieurs tentatives, sans succès. Probablement une erreur de syntaxe...

<button type='button' onClick="EvalSound('sound1')">Entendre la question</button>

Quelqu'un peut m'aider? Merci!
A voir également:

1 réponse

XanderS2X Messages postés 430 Date d'inscription jeudi 6 novembre 2008 Statut Membre Dernière intervention 1 février 2009 26
28 nov. 2008 à 16:25
Bonjour,

Quel est le DOCTYPE de votre page ?
0
Je ne suis pas sûre de bien comprendre la question. J'écris en PHP. Est-ce ce que vous vouliez savoir?
0
XanderS2X Messages postés 430 Date d'inscription jeudi 6 novembre 2008 Statut Membre Dernière intervention 1 février 2009 26 > lapuce
28 nov. 2008 à 21:28
En fait, toute page (PHP ou HTML) que vous concevez doit contenur un DOCYTPE, c'est une Déclaration de Type de Document (ou DTD aussi).
Cela permet aux navigateurs Web (Internet Explorer, Firefox, Opera...) de comprendre comment interpréter le code HTML de vos pages, le PHP étant géré surtout par les serveurs.

C'est une ligne qu'il est nécessaire de déclarer dès le début, avant la balise <head>, qui ressemble à ça :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >

Bien sûr, cette ligne peut différer en fonction du DTD que vous souhaitez utiliser, chaque DTD ayant ses spécificités, sa liste de compatibilité des balises etc...
Tous les DTD actuels :
- HTML 4.01 Transitional
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

- HTML 4.01 Strict
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

- XHTML 1.0 Transitional
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">


- XHTML 1.0 Strict
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">


- XHTML 1.0 Mobile
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">


- XHTML 1.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">


Et bientôt, 2 nouveaux DTD apparaîtront pour HTML 5 et XHTML 5.

Pour en revenir à la question que je vous pose sinon, c'est parce qu'en fait, selon le DTD que vous utilisez pour votre page, certaines balises peuvent ne pas être compatibles/disponibles, et selon des infos que j'ai trouvées sur le net (faudrait que je retrouve le lien), la balise <button> n'est disponible que pour une page déclarée en DTD XHTML 1.0 ou supérieur.

C'est assez clair ou vous êtes un peu perdu ? lol
0
lapuce > XanderS2X Messages postés 430 Date d'inscription jeudi 6 novembre 2008 Statut Membre Dernière intervention 1 février 2009
28 nov. 2008 à 21:38
Merci pour l'information concernant les DTD, je vais vérifier et m'assurer d'ajouter la ligne en fonction de mon code.

Cependant, j'utilise déjà d'autre boutons de type <button> dans mon code, qui eux fonctionnent bien. La différence réside dans le fait que pour ceux qui fonctionnent actuellement, je récupère la valeur plutôt que d'utiliser l'option "onclick". C'est là que ça accroche, on dirait.
0
XanderS2X Messages postés 430 Date d'inscription jeudi 6 novembre 2008 Statut Membre Dernière intervention 1 février 2009 26 > lapuce
28 nov. 2008 à 21:46
Ok, donc ça doit être une erreur de syntaxe qui traîne dans le JavaScript.

Essayez avec un ";" après votre onclick et juste avant la dernière double-guillemets.
0
lapuce > XanderS2X Messages postés 430 Date d'inscription jeudi 6 novembre 2008 Statut Membre Dernière intervention 1 février 2009
28 nov. 2008 à 21:51
Malheureusement, ça c'est ma ligne de code qui fonctionne bien et que j'aimerais supprimer. :)
0