IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Style de programmation en JS


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Inscrit en
    Novembre 2006
    Messages
    3
    D�tails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 3
    Par d�faut Style de programmation en JS
    Salut,

    Je ne suis pas un expert en JS, mais je suis de plus en plus amen� � utiliser des scripts ou en faire moi m�me, et j'ai une question...

    Suis-je le seul � �tre horripil� par ce style de programmation ?
    L'extrait vient de ce script: http://www.howtocreate.co.uk/jslibs/listCollapse.js
    Je dois le modifier et franchement, j'ai des boutons rien qu'en le regardant.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    function compactMenu(oID,oAutoCol,oPlMn,oMinimalLink) {
    	if( !document.getElementsByTagName || !document.childNodes || !document.createElement ) { return; }
    	var baseElement = document.getElementById( oID ); if( !baseElement ) { return; }
    	compactChildren( baseElement, 0, oID, oAutoCol, oPlMn, baseElement.tagName.toUpperCase(), oMinimalLink && oPlMn );
    }
    function compactChildren( oOb, oLev, oBsID, oCol, oPM, oT, oML ) {
    	if( !oLev ) { oBsID = escape(oBsID); if( oCol ) { openLists[oBsID] = []; } }
    	for( var x = 0, y = oOb.childNodes; x < y.length; x++ ) { if( y[x].tagName ) {
    		//for each immediate LI child
    		var theNextUL = y[x].getElementsByTagName( oT )[0];
    		if( theNextUL ) {
    			//collapse the first UL/OL child
    			theNextUL.style.display = 'none';
    			//create a link for expanding/collapsing
    			var newLink = document.createElement('A');
    			newLink.setAttribute( 'href', '#' );
    			newLink.onclick = new Function( 'clickSmack(this,' + oLev + ',\'' + oBsID + '\',' + oCol + ',\'' + escape(oT) + '\');return false;' );
    			//wrap everything upto the child U/OL in the link
    			if( oML ) { var theHTML = ''; } else {
    				var theT = y[x].innerHTML.toUpperCase().indexOf('<'+oT);
    				var theA = y[x].innerHTML.toUpperCase().indexOf('<A');
    				var theHTML = y[x].innerHTML.substr(0, ( theA + 1 && theA < theT ) ? theA : theT );
    				while( !y[x].childNodes[0].tagName || ( y[x].childNodes[0].tagName.toUpperCase() != oT && y[x].childNodes[0].tagName.toUpperCase() != 'A' ) ) {
    					y[x].removeChild( y[x].childNodes[0] ); }
    			}
    			y[x].insertBefore(newLink,y[x].childNodes[0]);
    			y[x].childNodes[0].innerHTML = oPM + theHTML.replace(/^\s*|\s*$/g,'');
    			theNextUL.MWJuniqueID = oIcount++;
    			compactChildren( theNextUL, oLev + 1, oBsID, oCol, oPM, oT, oML );
    } } } }
    function clickSmack( oThisOb, oLevel, oBsID, oCol, oT ) {
    	if( oThisOb.blur ) { oThisOb.blur(); }
    	oThisOb = oThisOb.parentNode.getElementsByTagName( unescape(oT) )[0];
    	if( oCol ) {
    		for( var x = openLists[oBsID].length - 1; x >= oLevel; x-=1 ) { if( openLists[oBsID][x] ) {
    			openLists[oBsID][x].style.display = 'none'; if( oLevel != x ) { openLists[oBsID][x] = null; }
    		} }
    		if( oThisOb == openLists[oBsID][oLevel] ) { openLists[oBsID][oLevel] = null; }
    		else { oThisOb.style.display = 'block'; openLists[oBsID][oLevel] = oThisOb; }
    	} else { oThisOb.style.display = ( oThisOb.style.display == 'block' ) ? 'none' : 'block'; }
    }
    Qu'en pensez-vous ?

  2. #2
    Membre Expert
    Avatar de FremyCompany
    Profil pro
    �tudiant
    Inscrit en
    F�vrier 2006
    Messages
    2 532
    D�tails du profil
    Informations personnelles :
    �ge : 34
    Localisation : Belgique

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 2 532
    Par d�faut
    J'ai connu pire, mais en effet, on ne peux pas dire que cela soit de toute claret�

  3. #3
    Membre exp�riment�
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    208
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 208
    Par d�faut
    Ca manque de commentaires. Pour �a qu'on capte rien....

  4. #4
    Membre �clair�
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    Septembre 2006
    Messages
    519
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 31
    Localisation : Suisse

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels

    Informations forums :
    Inscription : Septembre 2006
    Messages : 519
    Par d�faut
    Et de plus, il manque quelques sauts de ligne

Discussions similaires

  1. style de programmation plus "naturel" ?
    Par gorgonite dans le forum Langages fonctionnels
    R�ponses: 38
    Dernier message: 13/07/2008, 04h00
  2. [GridView]Cr�er un gridview et ses Styles par programme
    Par fragmonster dans le forum ASP.NET
    R�ponses: 1
    Dernier message: 02/04/2007, 15h18
  3. Donnez le style xp � un programme
    Par bertrand_declerck dans le forum Composants VCL
    R�ponses: 3
    Dernier message: 08/07/2005, 11h46
  4. Etude des "styles" de programmation
    Par RiRi51 dans le forum Langages de programmation
    R�ponses: 5
    Dernier message: 12/03/2003, 19h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo