Horloge sonnant les heures (répétées), les demies et les quarts.
Entièrement paramétrable : langue, affichage, sonneries.
S'appuie sur le très utile (et léger) DewPlayer (en Flash).
Source / Exemple :
/** NipClock 1.1
Horloge sonnant les heures (répétées), les demies et les quarts.
Entièrement paramétrable : langue, affichage, sonneries.
S'appuie sur le très utile (et léger) DewPlayer (en Flash).
N'hésitez pas à m'écrire pour toute suggestion !
(formulaire sur le site)
--
This clock strikes hours (repeated), halves and quarters.
Fully customizable: langauge, display, chime.
Based on both useful and lightest Flash DewPlayer.
Feel free to write me any feedback!
(use online form)
--
Nostalgique de votre comtoise ou autre horloge de grand-mère ?
Laissez cette page ouverte pour entendre le carillon sonner l'heure,
les demies et les quarts. Et prenez un casque si l'entourage est réticent !
B. Ollé (c) 2008 - http://carillon.avenue-du.net
/*************
- Espace configuration : replacez les occurrences par vos propres sons
- Configuration Zone: replace with your sounds
/* Sonnerires : indiquer la durée du son en suivant en secondes, sauf pour le dernier
- (le 0 initial fait sonner sans délai)
*
- Ringings: mention its duration in seconds after the sound, except for the last one
- (initial 0 starts striking immediately) */
/* sonnerie des quarts
firts quarter ringing */
var firstQuarters = new Array(0,'http://neep.free.fr/Saint_Exupere/Sons/cl6.mp3',1,'http://neep.free.fr/Saint_Exupere/Sons/cl4.mp3');
/* sonnerie des demies
halves ringing */
var halfOnes = new Array(0,'http://neep.free.fr/Saint_Sernin_basilique/Sons/cl2.mp3',1,'http://neep.free.fr/Saint_Sernin_basilique/Sons/cl1.mp3',2,'http://neep.free.fr/Saint_Sernin_basilique/Sons/cl2.mp3',1,'http://neep.free.fr/Saint_Sernin_basilique/Sons/cl1.mp3');
/* sonnerie des trois-quarts
third quarter ringing */
var thirdQuarters = new Array(0,'http://neep.free.fr/Saint_Exupere/Sons/cl10.mp3',1,'http://neep.free.fr/Saint_Exupere/Sons/cl8.mp3',2,'http://neep.free.fr/Saint_Exupere/Sons/cl10.mp3',1,'http://neep.free.fr/Saint_Exupere/Sons/cl8.mp3',2,'http://neep.free.fr/Saint_Exupere/Sons/cl10.mp3',1,'http://neep.free.fr/Saint_Exupere/Sons/cl8.mp3');
/* son de chaque coup des heures
sound for hour strikes */
var hourlyStrikeSound = 'http://neep.free.fr/Saint_Sernin_basilique/Sons/cl5.mp3';
var hourlyStrikeDelay = 3; // undetermined scale...
/* pré-sonnerie des heures
first heard hour melody */
var hourlyMelody = 'http://neep.free.fr/Saint_Exupere/Sons/Legende_saint_Nicolas_theme.mp3';
var hourlyMelodyDuration = 6; // en secondes - in seconds
/* chemin du lecteur Flash
Flash reader path */
var dewPlayerPath = "
http://neep.free.fr/sons/dewplayer.swf";
/* affichage sur 24h
24 hour display */
var amPmFormat = false;
/* affichage des secondes
seoncds display */
var displaySeconds = false;
/* langue : fr=0, en=1 */
var language = 0;
/* traductions
feel free to create entries for your language
and share them */
var dayLabels=new Array(new Array("dimanche", "lundi", "mardi", "mercredi", "jeudi", "vendredi", "samedi"),
new Array("Saturday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"));
var dayText=new Array("Nous sommes<br>le","Today is");
var monthLabels=new Array(new Array("janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"),
new Array("January","February","March","April","May","June","July","August","September","October","November","December"));
var hourText=new Array("Il est","It's");
var hourSeparator=new Array("h",":");
var secondLabel=new Array("s","");
var andLabel=new Array(" et ",":");
var debugTime=new Array("Horloge en maintenance","Clock Testing Time");
/*************
- Zone experts : éviter de modifier
- Expert Zone: avoid modifying
var debug = false;
var debugText = "<p><font color=red>"+debugTime[language]+"</font></p>";
/* Fonction principale
function nipClock() {
var fullDate=new Date();
var day = dayLabels[language][fullDate.getDay()];
var day_of_month = fullDate.getDate();
var month = monthLabels[language][fullDate.getMonth()];
var year = fullDate.getFullYear();
var hour = (amPmFormat?fullDate.getHours()%12:fullDate.getHours());
var minutes = fullDate.getMinutes();
var seconds = fullDate.getSeconds();
var milliseconds = fullDate.getMilliseconds();
var dateStr;
switch (language) {
case 0:
dateStr=day+"<br>"+day_of_month+" "+month+" "+year;
break;
case 1: default:
dateStr=day+"<br>"+month+", "+day_of_month+"<sup>"+(day_of_month%10==1?"st":(day_of_month%10==2?"nd":(day_of_month%10==3?"rd":"th")))+"</sup> "+year;
if (seconds<10) seconds="0"+seconds;
break;
}
/* Composer ici le texte de l'horloge
- Compose here the clock text */
document.getElementById("nipClock").innerHTML=(debug?debugText:"")+dayText[language]+" "+dateStr+"<br><br>"+hourText[language]+" "+hour+hourSeparator[language]+(minutes<10?"0"+minutes:minutes)+(displaySeconds?andLabel[language]+seconds+secondLabel[language]:"");
/* Décompte les secondes ou les minutes
- Second or minute countdown */
setTimeout('nipClock()',1000*(displaySeconds?1:60));
var strikeIsPossible = true;
if (displaySeconds) strikeIsPossible = (seconds == 0);
if (strikeIsPossible)
if ((minutes==0) || (minutes==2)) playHourlyChime(hour>0?hour%12:12);
else if (minutes==15) playChime(firstQuarters);
else if (minutes==30) playChime(halfOnes);
else if (minutes==45) playChime(thirdQuarters);
/* Sonner pour les tests
- Ringing for testing purpose */
if (debug) {
// seconds mode: strikes every x second
var x=10; if (seconds%x == 0) playChime(halfOnes);
var x=20; if (seconds%x == 0) playHourlyChime(hour%12);
// minutes mode
playChime(firstQuarters);
}
}
/* Joue une mélodie, puis autant de coups que d'heures
- Plays a melody, then strikes the hours */
function playHourlyChime(heure) {
var jeu_coup_heures = new Array("0",hourlyMelody,hourlyMelodyDuration+1);
var j=3;
for (i=1;i<=heure;i++) {
if (i>1) jeu_coup_heures[j++]=hourlyStrikeDelay;
jeu_coup_heures[j++]=hourlyStrikeSound;
}
playChime(jeu_coup_heures);
}
/* Joue les sons séquentiellement
- Strikes the sounds sequentially */
function playChime(chime_array) {
var cumulatedDuration = 0;
if (debug) document.getElementById("nipDebug").innerHTML="<p>";
for(i=0; i<chime_array.length-1; i=i+2) {
cumulatedDuration+=1000*chime_array[i];
if (debug) document.getElementById("nipDebug").innerHTML=document.getElementById("nipDebug").innerHTML+"i<sub>"+i+"</sub> "+cumulatedDuration/1000+"s "+chime_array[i+1].substring(7)+" <br>";
setTimeout("playSound('"+chime_array[i+1]+"')",cumulatedDuration);
}
}
/* Joue le son spécifié
- Plays the specified sound */
function playSound(file) { document.getElementById("chime").innerHTML='<object type="application/x-shockwave-flash" data="'+dewPlayerPath+'?mp3='+file+'&autoplay=true&autoreplay=false" height="0" width="0" border=0><param name="wmode" value="transparent"><param name="movie" value="'+dewPlayerPath+'.swf?mp3='+file+'&autoplay=true&autoreplay=false"/></object>'; }
/* Pré-chargement des sons
var d=document; d.sounds=new Array(); var j=d.sounds.length;
d.sounds[j]=new Object; d.sounds[j++].src=hourlyStrikeSound;
d.sounds[j]=new Object; d.sounds[j++].src=hourlyMelody;
for(i=0; i<firstQuarters.length-1; i=i+2) { d.sounds[j]=new Object; d.sounds[j++].src=firstQuarters[i];}
for(i=0; i<halfOnes.length-1; i=i+2) { d.sounds[j]=new Object; d.sounds[j++].src=halfOnes[i];}
for(i=0; i<thirdQuarters.length-1; i=i+2) { d.sounds[j]=new Object; d.sounds[j++].src=thirdQuarters[i];}
Conclusion :
Exemple sur mon site :
http://carillon.avenue-du.net
N'hésitez pas à m'écrire pour toute suggestion !
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.