Fonction blink ( testée sous ff ) portabilité ie op et gc en cours

Soyez le premier à donner votre avis sur cette source.

Snippet vu 4 932 fois - Téléchargée 16 fois

Contenu du snippet

Voilà de quoi faire un petit objet clignotant avec une fonction qui retourne l'ID de l'objet sur lequel on applique le clignotement.

L'avantage c'est qu'on peut associer ce qu'on veut à l'effet tant que visibility puisse lui être attribué.

Source / Exemple :


/**************************************************/
/** FONCTION OBJET  CLIGNOTANT                   **/
/**************************************************/

function lanceur()
{   
    //	Interval à 1 sec 
    var inter	=	setInterval('fonc_blink();',1000);
}

//	déclaration de la variable bool et 
//      initialisation de body,bodyElements et element
var bool	=	false;
var body,bodyElements,element;

function fonc_blink()
{    
    // Tableau des objets déterminés par la balise <OBJBLINK>
    // Ex d'utilisation: <OBJBLINK>Objet clignotant</OBJBLINK>
    body            =   document.getElementsByTagName("body")[0];
    bodyElements    =   body.getElementsByTagName("OBJBLINK");  
        
    // Condition booléenne  
    if( bool == false )
    {   
        //Balayage du code pour trouver la balise <OBJBLINK>  
        for(var i=0;i<=bodyElements.length-1;i++)
        {    
            // element = element suivant de bodyElement
            element    =   bodyElements[i];
            // Si faux alors texte invisible
            element.style.visibility = 'hidden';  
            // Réinitialisation du booléen à vrai
            bool = true;
        }  
    }
    else if( bool == true )
    {
        //Balayage du code pour trouver la balise <OBJBLINK> 
        for(var j=0;j<=bodyElements.length-1;j++)
        {
            // element = element suivant de bodyElement
            element    =   bodyElements[j];   
            // Si vrai alors texte visible
            element.style.visibility = 'visible';  
            // Réinitialisation du booléen à faux
            bool = false;
        }
    }
}

A voir également

Ajouter un commentaire

Commentaires

Bul3
Messages postés
4934
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
7 -
initié ?? ( sinon, je n'eusse rien dit )
function clign(quoi)
{ quoi.style.visibility = quoi.style.visibility=="hidden"?"visible":"hidden"; }
setInterval ( function()
{ clign(document.getElementById("clignotant")) },
1000 );
et on doit pouvoir largement mieux faire...
jdmcreator
Messages postés
656
Date d'inscription
samedi 30 décembre 2000
Statut
Membre
Dernière intervention
20 juillet 2012
3 -
Au lieu de chercher l'id clignotant (qui ne permettrait alors qu'à 1 élément de clignoter), pourquoi pas un NAME particulier ou encore mieux, la balise blink (document.getElementsByTagName('blink')[i])

;)
Miky76
Messages postés
9
Date d'inscription
jeudi 12 février 2009
Statut
Membre
Dernière intervention
5 juillet 2010
-
Une classe CSS fait la même chose, sans JS :

.blink { text-decoration: blink; }

Quant au niveau, je me sens un maitre si cela est réservé aux "Initiés" ;o)
Bul3
Messages postés
4934
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
7 -
blink ne fonctionne pas avec de nombreux
navigateurs. mais comme le clignotement
est pénible pour la vue...
LeFauve42
Messages postés
239
Date d'inscription
vendredi 20 octobre 2006
Statut
Membre
Dernière intervention
20 avril 2009
-
Oui, c'est un peu leger pour de l'initie :o)

Allez, un petit commentaire constructif:
Plutot que de t'embeter a gerer un compteur numerique, tu devrais utiliser un boolean. Ca donne un truc comme ca:

cligne = !cligne; // inverse la valeur
if(cligne)
{
// Ton truc est visible
}
else
{
// Ton truc est pas visible
}

Evidemment, dans ce cas precis, c'est "overkill" mais si tu dois faire un flip/flop (avoir une valeur qui alterne) c'est plus propre que ton cligne++;

Eric

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.