Pages

Affichage des articles dont le libellé est compteur. Afficher tous les articles
Affichage des articles dont le libellé est compteur. Afficher tous les articles

Compteur qui tourne en boucle sujet

vendredi 31 janvier 2014




Bonjour,

Merci pour votre aide :ccool:

J'ai un bout de code en JS pour faire tourner un decompte, mai s lorsqu'il arrive à zéro le décompte continue :calim2:


Code:


//<![CDATA[

// SET TARGET DATE HERE
var target = 'February 28, 2014';

// That's all you need to do.

/************************************************************************/
// Initial digit position for each number graphic
// 9-0
var initialPosCountdown = [-5562, -4944, -4326, -3708, -3090, -2472, -1854, -1236, -618, 0];
// 5-0 (first minute and second digit)
var initialMidPosCountdown = [-3090, -2472, -1854, -1236, -618, 0];
// 2-0 (first hour digit)
var initialSmallPosCountdown = [-1236, -618, 0];
var classNamesCountdown = ['jours', 'heures', 'minutes', 'secondes'];
var idNamesCountdown = ['d', 'h', 'm', 's'];
var animationFramesCountdown = 5;
var frameShiftCountdown = 103;

// If no number in URL (?date=1/1/11), then use default one
target = (window.location.search == "") ? target : window.location.search.substring(6);

// Starting numbers
var nowCountdown = new Date().getTime();
var endCountdown = Date.parse(target);
// Fix if date is in past
if (endCountdown < nowCountdown){
       
//document.location.href="test.php"
//window.location='test.php'
//window.location = "test.php/"
//window.location.replace("./jeux.php");

}
var theDiffCountdown = endCountdown-nowCountdown;
var theDiffStringCountdown = getTimeStringCountdown(theDiffCountdown);

// Increment (count one second at a time)
var incrementCountdown = 1000;
// Pace of counting in milliseconds (refresh digits every second)
var paceCountdown = 1000;

// Function that controls counting
function doCountCountdown(){
        var x = getTimeStringCountdown(theDiffCountdown);
        theDiffCountdown -= incrementCountdown;
        var y = getTimeStringCountdown(theDiffCountdown);
        // For debugging
        //console.log(y);
        digitCheckCountdown(x,y);
}

// This checks the old value vs. new value, to determine how many digits need to be animated.
function digitCheckCountdown(x,y){
        var a = x.split(':');
        var b = y.split(':');
        for (var i = 0, c = a.length; i < c; i++){
                if (a[i].length < 2) a[i] = '0' + a[i];
                if (b[i].length < 2) b[i] = '0' + b[i];
                var countA = a[i].toString().length;
                var countB = b[i].toString().length;
                if (countB < countA) removeDigitCountdown(i, countB);
                for (var j = 0; j < countB; j++){
                        if (b[i].charAt(j) != a[i].charAt(j)){
                                var which = idNamesCountdown[i] + j;
                                animateDigitCountdown(which, a[i].charAt(j), b[i].charAt(j));
                        }
                }
        }
}

// Function to break the time into day:hour:minute:second
function getTimeStringCountdown(d){
        var diff = d;
        var days = Math.floor(diff / 86400000);
        diff -= days * 86400000;
        var hours = Math.floor(diff / 3600000);
        diff -= hours * 3600000;
        var minutes = Math.floor(diff / 60000);
        diff -= minutes * 60000;
        var seconds = Math.floor(diff / 1000);
        return days + ':' + hours + ':' + minutes + ':' + seconds;
}

// Looks in correct array to get the digit's position
function getPosCountdown(id, digit){
        if (id == 's0' || id == 'm0'){
                return initialMidPosCountdown[digit];
        }
        else if (id == 'h0'){
                return initialSmallPosCountdown[digit];
        }
        else{
                return initialPosCountdown[digit];
        }
}

// Animation function
function animateDigitCountdown(which, oldDigit, newDigit){
        var speed = 80;
        var pos = getPosCountdown(which, oldDigit);
        var newPos = getPosCountdown(which, newDigit);
        // Each animation is 5 frames long, and 103px down the background image.
        // We delay each frame according to the speed above.
        for (var k = 0; k < animationFramesCountdown; k++){
                pos -= frameShiftCountdown;
                if (k == (animationFramesCountdown - 1)){
                        $("#" + which).delay(speed).animate({'background-position': '0 ' + pos + 'px'}, 0, function(){
                                // At end of animation, shift position to new digit.
                                $("#" + which).css({'background-position': '0 ' + newPos + 'px'}, 0);
                        });
                }
                else{
                        $("#" + which).delay(speed).animate({'background-position': '0 ' + pos + 'px'}, 0);
                }
        }
}

// Remove digit
function removeDigitCountdown(i,count){
        $("li#" + idNamesCountdown[i] + count).remove();
}

// Sets the correct digits on load
function initialDigitCheckCountdown(initial){
        // Creates the html
        var a = initial.split(':');
        for (var i = 0, c = a.length; i < c; i++){
                if (a[i].length < 2) a[i] = '0' + a[i];
                var count = a[i].toString().length;
                var html = '<div class="set"><ul class="' + classNamesCountdown[i] + '">';
                var bit = count;
                for (var j = 0; j < count; j++){
                        bit--;
                        html += '<li id="' + idNamesCountdown[i] + j + '"></li>';
                        if (bit != 0 && bit != (count) && bit % 3 == 0) html += '<li class="comma"></li>';
                }
                html += '</ul><h2>' + classNamesCountdown[i].toUpperCase() + '</h2>';
                // If you don't like the ':' separator, remove the following line
                if (i != 3) html += '</div><div class="separator">:</div>';
                //
                $("#countdown-blog").append(html);
        }
        // Sets digits to the right number
        for (var n = 0, cn = a.length; n < cn; n++){
                count = a[n].toString().length;
                for (var m = 0; m < count; m++){
                        var thisID = idNamesCountdown[n] + m;
                        var thisPos = getPosCountdown(thisID, a[n].charAt(m));
                        $("#" + idNamesCountdown[n] + m).css({'background-position': '0 ' + thisPos + 'px'});
                }
        }
}

// Start it up
initialDigitCheckCountdown(theDiffStringCountdown);
setInterval(doCountCountdown, paceCountdown);

//]]>



A la ligne 28, il y a un contrôle qui est fait et si le decompte est inférieur à zéro il faut le rediriger (le visiteur) vers la page test.php.

:cry::cry:

Mais cela ne fonctionne pas, alors j'ai mis les 4 lignes de redirection en commentaire.

Si quelqu'un peut m'aider par avance un grand merci.

:lol:




Quelle vitesse affiche mon compteur de vitesse? sujet




Bonjour,

J'ai une bagnole dont les essieux sont séparés d'une distance de 3mètres au repos.

En mécanique classique,
Si je suis le conducteur de ma voiture, pour mesurer ma vitesse, je n'ai qu'à placer deux fils sur le sol distants de 3mètres par exemple, et mesurer avec un chronomètre l'intervalle de temps que mettent les roues avant pour rouler successivement sur les fils.
Si je suis au sol, je place tend un fil et avec un chronomètre je mesure l'intervalle de temps qui sépare les instants où les roues avant puis arrière roulent sur mon fil.
en mécanique classique j'obtiens en divisant le distance entre les fils dans le premier cas et la distance entre les essieux dans le second cas par l'intervalle de temps obtenus la vitesse.

En RR c'est un peu plus compliqué. car si la vitesse de la voiture est de 0.8c, du fait de la contraction des longueurs,
Si je suis conducteur, de mon point de vue, la distance entre les fils n'est plus de 3 mètres mais de 1.8m

Et si je suis sur le bord de la route, de mon point de vue c'est la voiture qui ne mesure plus que 1.8m

Si je divise 1.8m par 0.8c j'obtiens Et donc en divisant ma longueur de référence 3m par cette valeur de temps j'obtiens une valeur de vitesse ultrarelativiste de (4/3)c
Est-ce cette vitesse qu'affichera mon compteur de vitesse?
Quel sens physique pourrais t'on donner à cette vitesse et comment l'appeller sans déclencher une attaque nucléaire?
comment puis-je obtenir une mesure directe de la vitesse instantanée 0.8c?

Cordialement,
Zefram




Choisir un compteur horaire pour une vis d'alimentation d'une chaudière sujet

mercredi 29 janvier 2014




Bonjour,
Tout est dans le titre ou presque. Quelques précisions:

- besoin de cumuler le temps de fonctionnement d'une vis 230V qui fonctionne par impulsions, les plus courtes pouvant faire 0,6s
- installation la plus simple (juste un branchement électrique, pas de "mécanique" comme avec un compteur de vélo)

Quel modèle connaissez-vous ou avez-vous utilisé ?
Puis-je espérer un affichage en secondes ?

Une première piste ICI
Certains en utilisent un je crois (Hervé?)

Merci pour vos conseils.