Souvent, il est écrit :
<html> <head> .../... <bgsound src="http://URI_MID_ou_MP3_ou_WMA"> </head> <body> .../... </body> </html>
Et cela ne passe pas à la validation W3C.
Il convient d'écrire :
<html> <head> .../... <object type="audio/mpeg"> <param name="src" value="http://URI_MID_ou_MP3_ou_WMA"> <param name="autoplay" value="true"> <param name="loop" value="false"> <!-- true, pour mettre en boucle //--> <param name="volume" value="25"> <!-- De 0 à 100 - Ne fonctionne pas avec MSIE //--> </object> </head> <body> .../... </body> </html>
Là, c'est parfaitement valide W3C !![]()
Alain AKA Arma
</edit>Hors ligne
Et en poussant un peu le vice...
On peut jouer des musiques aléatoires !
Voici un exemple de code :
<script type="text/javascript">
<!--
var bgsound=new Array('','prelude.mid','','goeland.wma','','prelude.mid','');
document.write('<object type="audio/mpeg"><param name="src" value="'+bgsound[Math.floor(Math.random() * bgsound.length)]+'"><param name="autoplay" value="true"><param name="loop" value="false"><param name="volume" value="25"><\/object>');
// -->
</script>Le tableau contient :
- '' --> Rien ;
- 'prelude.mid' --> Prélude (Bach & Crazy) ;
- '' --> Rien ;
- 'goeland.wma' --> La Complainte du Goëland (Eddy Pascal) ;
- '' --> Rien ;
- 'prelude.mid' --> Prélude (Bach & Crazy) ;
- '' --> Rien.
Il est possible de classer autrement :
- '' --> Rien ;
- '' --> Rien ;
- '' --> Rien ;
- '' --> Rien ;
- 'prelude.mid' --> Prélude (Bach & Crazy) ;
- 'prelude.mid' --> Prélude (Bach & Crazy) ;
- 'goeland.wma' --> La Complainte du Goëland (Eddy Pascal).
Donc (dans cet exemple [code précédent]) :
- 4 fois sur 7, il n'y a pas de musique (page muette) ;
- 2 fois sur 7, il y a du Bach (Prélude) ;
- 1 fois sur 7, c'est Eddy Pascal (La Complainte du Goëland) - Streaming auto.
C'est une moyenne car le tirage est aléatoire et il est possible d'avoir la même chose plusieurs fois de suite...
En réel sur le Web --> Crazy Black Hattitude
Faire F5 toutes les 10 secondes si pas de musique ou musique déjà entendue...
(tout le code est visible - pas de cloaking dans la page)
Il est possible de mettre la musique que l'on veut (avec les URL ou en direct [URI locale]).
Il convient d'éviter des fichiers trop volumineux (par exemple WAV).
Les encodages MID et WMA sont les mieux adaptés.
Le format MP3 est aussi supporté...
Bon amusement !![]()
Alain AKA Arma
PS : Pour que cela fonctionne aussi avec LINUX, il faut mettre les URL complètes.
Hors ligne
Et le vice, il peut être poussé encore plus loin...
(tout ce qui suit est du Troll - Il n'y a plus de HTML mais du JavaScript !)
Il faut apprécier la performance (HLM m'a un peu aidé sur ce coup - confusion entre méthode et propriété de ma part) :
<script type="text/javascript">
<!--
var hh = (new Date()).getHours();
if (parseInt(hh)>6 && parseInt(hh)<18) // de 07:00 à 17:59
{
var bgsound=new Array('','http://crazy.concours-seo.fr/black-hattitude/zik.mid','');
}
else // de 18:00 à 06:59
{
var bgsound=new Array('','http://crazy.concours-seo.fr/black-hattitude/goeland.wma','','http://crazy.concours-seo.fr/black-hattitude/prelude.wma','');
}
document.write('<object type="audio/mpeg"><param name="src" value="'+bgsound[Math.floor(Math.random() * bgsound.length)]+'"><param name="autoplay" value="true"><param name="loop" value="false"><param name="volume" value="25"><\/object>');
// -->
</script>De 7h à 18h (journée) il y a un choix de musiques (une seule [une merdouille] ou, le plus souvent, rien) ;
De 18h à 7h (soirée et nuit) ce sont d'autres choses (Goëland ou Prélude ou, plus fréquemment, rien aussi) !
Très vicieux, non ?
Ah ah ah ah ah...
![]()
AHOHNM
PS : J'avais malencontreusement écrit
var hh = getHours(new Date());
Comme en PHP. Quel GLAND ! Pfff... ![]()
PPS : Pour tester, c'est facile --> Changer l'heure du PC (+/- 10h)
(et cliquer sur le lien en gros du Post précédent - j'ai la flemme de le remettre ici)
PPPS : Programmation Objet --> Classe{statique|instanciable}.Propriété&|Méthode = Prototype/Objet ![]()
Hors ligne
On peut faire encore mieux !
<script type="text/javascript">
<!--
var hh = parseInt((new Date()).getHours());
if (hh > 5 && hh <18) // de 06:00 à 17:59 (journée)
{
var bgsound=new Array('','http://crazy.concours-seo.fr/musique/zik.mid','','http://crazy.concours-seo.fr/musique/prelude.mid','');
}
else // de 18:00 à 05:59 (soirée et nuit) et en streaming automatique...
{
var bgsound=new Array('','http://crazy.concours-seo.fr/musique/goeland.wma','','http://crazy.concours-seo.fr/musique/prelude.wma','','http://crazy.concours-seo.fr/musique/rapetout.wma','','http://crazy.concours-seo.fr/musique/quequette.wma','','http://crazy.concours-seo.fr/musique/lifting.mp3','');
}
alea = Math.floor(Math.random() * bgsound.length);
if ((alea == 7 || alea == 9) && !confirm("ATTENTION !\n\nL\'élément Audio présélectionné\nest réservé à un auditoire averti.\n\nSi vous voulez l\'entendre, cliquez sur [ OK ],\nsi vous ne savez pas, cliquez sur [ Annuler ].")) alea = 0; // ou 1, SSV...
document.write('<object type="application/x-mplayer2"><param name="src" value="'+bgsound[alea]+'"><param name="autoplay" value="true"><param name="loop" value="false"><param name="volume" value="25"><param name="width" value="0"><param name="height" value="0"><\/object>');
// -->
</script>Ah ah ah ah ah...![]()
Alain AKA Arma
Dernière modification par Crazy (17/10/2009 19:07:20)
Hors ligne
Et le Troll continue...
On y va, c'est encore mieux !
<script type="text/javascript">
<!--
var hh = parseInt((new Date()).getHours());
if (hh > 5 && hh <18) // de 06:00 à 17:59 (journée)
var bgsound = new Array('','http://crazy.concours-seo.fr/musique/zik.mid','http://crazy.concours-seo.fr/musique/prelude.mid');
else // de 18:00 à 05:59 (soirée et nuit) et en streaming automatique...
{
var bgsound = new Array('','http://crazy.concours-seo.fr/musique/goeland.wma','http://crazy.concours-seo.fr/musique/prelude.wma','http://crazy.concours-seo.fr/musique/rapetout.wma');
if (hh <6) // ajout de ziks de 00:00 à 05:59 (nuit) toujours en streaming...
bgsound.push('http://crazy.concours-seo.fr/musique/quequette.wma','http://crazy.concours-seo.fr/musique/lifting.mp3');
}
alea = Math.floor(Math.random() * bgsound.length);
if (alea > 3 && !confirm("ATTENTION !\n\nL\'élément Audio présélectionné\nest réservé à un auditoire averti.\n\nSi vous voulez l\'entendre, cliquez sur [ OK ],\nsi vous ne savez pas, cliquez sur [ Annuler ].")) alea = 0; // ou 1, SSV...
if (alea) document.write('<object type="application/x-mplayer2"><param name="src" value="'+bgsound[alea]+'"><param name="autoplay" value="true"><param name="loop" value="false"><param name="volume" value="25"><param name="width" value="0"><param name="height" value="0"><\/object>');
// -->
</script>Là, c'est super optimisé en fonction de plusieurs tranches horaires et du type de musique...
Et, en plus, on apprend comment ajouter facilement des éléments supplémentaires à un tableau.
(il est donc très facile d'en déduire que, en JavaScript, tous les tableaux sont [par défaut] dynamiques)
Ah ah ah ah ah...
![]()
AHOHNM
PS : Bien entendu, il y a d'autres méthodes qui s'appliquent à la propriété tableau (objet standard du JavaSript)...
...
PPS : Il est aussi possible de le faire en PHP, directement sur le Serveur Web. Mais c'est moins marrant ! ![]()
(et qui plus est, c'est bien dépendant de l'heure locale du "client" et non pas de celle du "serveur"... CQFD. Ah ah ah ah ah...)
Hors ligne
'taing, c'est ça qui fait planter firefox chaque fois !
![]()
Tu ne peux pas regarder un peu le pb ?
Hors ligne
Cela fonctionne très bien avec FF, idem qu'avec MSIE...
Je l'ai testé et re-testé (FF 3.5 + Plugin Windows Media 11) !![]()
Alain AKA Arma
PS : Peut-être un PlugIn exotique, installé fortuitement, ferait planter le bazar ?
![]()
Hors ligne
|
© 2006-2010 / A. G.☺ CiGi€M@®, 1997-2010 |
|
Reproduction totale ou partielle strictement interdite Contact : / |