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 :

$() � la place de getElementById() sympa mais comment �viter les conflits?


Sujet :

JavaScript

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    D�cembre 2007
    Messages
    17
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2007
    Messages : 17
    Par d�faut $() � la place de getElementById() sympa mais comment �viter les conflits?
    Bonjour,

    Je d�couverts dans diff�rentes librairies qu'elles utilisent souvent cette syntaxe $("...") � la place de document.getElementById("...")

    J'ai tr�s envie de faire la m�me chose et j'ai �crit une fonction toute simple qui correspond � mon niveau compar�e � celles que j'ai pu croiser:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    function $(s){
    	return document.getElementById(s);
    }
    �a fait ce dont j'ai besoin et mon code me donne moi mal � la t�te c'est magnifique

    Seulement voila mon probl�me parfois j'utilise aussi les librairies o� j'ai vu �a donc je ne voudrait pas �craser la fonction de la librairie pour la remplacer par la mienne. J'ai donc pens� � faire �a:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    if ( !window.$ ){
     
    	function $(s){
    		return document.getElementById(s);
    	}
     
    }
    Je pense que mon code devrait continuer � fonctionner puisque les fonctions plus complexes des librairies en question font aussi (entre autres) ce que fait la mienne. Ai-je raison de croire �a...?


    D'autre part je me demande aussi ce qu'il se passe lorsqu'on veut utiliser sur la m�me page deux librairies comme mootools et jquery qui utilisent toutes les deux $() ?


    Merci d'avance pour vos r�ponses


    Dimalta

  2. #2
    R�dacteur/Mod�rateur

    Avatar de SpaceFrog
    Homme Profil pro
    D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activit� : D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par d�faut
    en javascript c'est la derni�re d�claration qui l'emporte ...

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    <script type='text/javascript'>
    function $(){
    alert('coucou')}
    function $(){
    alert('yop')}
    $()
    </script>
    Ma page Developpez - Mon Blog Developpez
    Pr�sident du CCMPTP (Comit� Contre le Mot "Probl�me" dans les Titres de Posts)
    Deux r�gles du succ�s: 1) Ne communiquez jamais � quelqu'un tout votre savoir...
    Votre post est r�solu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de D�veloppez !

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    D�cembre 2007
    Messages
    17
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2007
    Messages : 17
    Par d�faut
    Salut SpaceFrog,

    en javascript c'est la derni�re d�claration qui l'emporte ...
    c'est justement la dessus que je veux jouer, enfait je me dit que ce n'est pas grave que m'a fonction soit �cras�e puisqu'elle fait moins de chose que celle des diff�rentes librairies. par contre celle de la librairie ne doit pas �tre �cras�e par la mienne.

    Jusque la tout va bien (je crois??) mais par contre je me demande ce qu'il se passe quand on utilise deux librairie comme mootools et jquery qui utilisent toutes les deux $() ..?

  4. #4
    R�dacteur/Mod�rateur

    Avatar de SpaceFrog
    Homme Profil pro
    D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activit� : D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par d�faut
    il faudra faire un try catch sur $ puis tester
    Ma page Developpez - Mon Blog Developpez
    Pr�sident du CCMPTP (Comit� Contre le Mot "Probl�me" dans les Titres de Posts)
    Deux r�gles du succ�s: 1) Ne communiquez jamais � quelqu'un tout votre savoir...
    Votre post est r�solu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de D�veloppez !

Discussions similaires

  1. [MySQL] Comment �viter les conflits dans une db ?
    Par Dendrite dans le forum PHP & Base de donn�es
    R�ponses: 5
    Dernier message: 08/12/2008, 13h28
  2. Comment �viter les pages blanches dans un �tat?
    Par Noline dans le forum Access
    R�ponses: 2
    Dernier message: 31/07/2006, 16h30
  3. publipostage : comment �viter les doublons?
    Par Christophe93250 dans le forum Access
    R�ponses: 15
    Dernier message: 03/01/2006, 12h08
  4. R�ponses: 3
    Dernier message: 05/07/2005, 18h07
  5. Comment �viter les doublons dans ma table
    Par einegel dans le forum Bases de donn�es
    R�ponses: 3
    Dernier message: 09/11/2004, 12h18

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