Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse

NodeBB

  1. Home
  2. Programmation
  3. Développement web
  4. Javascript
  5. [JQuery] Introduction au JQuery

[JQuery] Introduction au JQuery

Scheduled Pinned Locked Moved Javascript
3 Posts 3 Posters 2.7k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • mars073M
    mars073M
    mars073
    wrote on last edited by
    #1

    <p>Salut all,<br/>
    Aujourd'hui je vais vous faire une intro au jquery, ce qui n'est en faite qu'une libraire en javascript mais bon la plupart des gens considèrent ça comme un langage appart .-.<br/><br/>
    le plus gros avantage du jquery c'est qu'il permet de faire des animations fluide sur la plupart des navigateur internet et qu'il est simple d'utilisation.<br/><br/>
    Pour "installer" jquery sur son site c'est très simple, dans la balise head de votre site ajoutez la balise suivante avant l'appel d'autres scripts utilisant jquery:</p>
    <pre class="ipsCode prettyprint lang-auto">
    <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
    </pre>
    <p>vous pouvez aussi télécharger jquery et le mettre directement sur votre site et mettre votre lien à la place (jquery.com)<br/>
    créez un fichier en *.js (ex: main.js) et ajoutez le de la même manière ci-dessus et dans votre jolie fichier on va ajouter ce que j'appel des balises jquery au même titre que le php (<?php ?>) même si ça n'a rien à voire, ce n'est pas obligé il existe différent type d'ouverture mais j'ai pris l’habitude d’utiliser celle-ci et ça évite des bugs de chargement:</p>
    <pre class="ipsCode prettyprint lang-auto">
    $(function() {
    // corps...
    });
    </pre>
    <p>dans l'exemple suivant on va faire un carré rouge qui change d'opacité si le curseur se trouve dessus ou non:<br/>
    -code html:</p>
    <pre class="ipsCode prettyprint lang-auto">
    <!DOCTYPE html>
    <html>
    <head>
    <title>MmoTrick - Intro au Jquery</title>
    <script type="text/javascript" src="_js/jquery.min.js"></script>
    <script type="text/javascript" src="_js/main.js"></script>
    </head>
    <body>
    <div id="carre" style="background: #ff0000; height: 100px; width: 100px; opacity: 0;"></div>
    </body>
    </html>
    </pre>
    <p>-code Jquery ("_js/main.js" dans mon exemple):</p>
    <pre class="ipsCode prettyprint lang-auto">
    $(function() {
    $(document).ready(function() {
    $("#carre").fadeto(1, 1000); // 1 = opacité qu'il doit atteindre; 1000 durée de l'animation (1000 = 1sec)
    });
    $("#carre").mouseenter(function() { // quand le curseur est sur le carré
    $("#carre").fadeto(0.2, 500);
    });
    $("#carre").mouseleave(function() { // quand le curseur quitte le carré
    $("#carre").fadeto(1, 3000);
    });
    });
    </pre>
    <p>-même code Jquery mais avec une syntaxe différente mais le même effet:</p>
    <pre class="ipsCode prettyprint lang-auto">
    $(function() {
    $("#carre").fadeto(1, 1000); // 1 = opacité qu'il doit atteindre; 1000 durée de l'animation (1000 = 1sec)
    $("#carre").mouseenter(function() { // quand le curseur est sur le carré
    $(this).fadeto(0.2, 500);
    }).mouseleave(function() { // quand le curseur quitte le carré
    $(this).animate({opacity: 1}, 3000);
    });
    });
    </pre>
    <p>Légende:<br/>

    • $(document), $(this), $("#carre") sont des selecteurs ils permettent de désigner le ou les éléments auquel vous voulez apporter une modification, un evenemnt ou une fonction quelconque, "#carre" est un selecteur similaire au css vous pouvez donc le remplacer par quelque chose du style: ".carre:first" ce qui selectionne le premier element de la class "carre".<br/>
    • .ready(), .mouseenter(), .mouseleave() sont des evenements propre à jquery (ce qui permet une interaction plus fluide et contrôlée avec l'utilisateur).<br/>
    • .fadeTo, .animate() sont des fonctions propre à jquery ce qui permet l'interaction avec les élèments du site (surtout le css);<br/><br/>
      Les différence entre les deux syntaxes:<br/>
    • suppression de l'evenement .ready (l’exécute le code dans le document est chargé), la balise jquery à +/- le même effet ce qui le rend inutile dans ce cas.<br/>
    • remplacement de $("#carre") par $(this), "this" indique que la modification ne s'applique que à l’élément concerné par l'evenement ce qui est utile dans le selecteur est une class (ex: ".carre" à la place de "#carre").<br/>
    • .mouseleave() mit à la suite quand vous avez plusieurs evenement pour le même selecteur vous pouvez les accrocher.<br/>
    • remplacement de .fadeTo() par .animate(), fadeTo est une version raccourcis pour l'opacité, l'avantage de .animate() et que vous pouvez modifier plusieurs éléèment du css en même temps (ex: '$(this).animate({opacity: 1, width: 250}, 3000);' ).<br/><br/>
      Si vous reprenez mes codes vous verrez que si vous passez plusieurs fois le curseur sur le curseur l'animation va se répéter en boucle pour empêcher cela il suffit d'ajouter la fonction .stop() avant .fadeTo() ou .animate.<br/><br/>
      Pour créer des variables c'est exactement la même chose que en javascript... car c'est du javascript mais certains puristes mettent un "$" devant le nom ce qui ne change absolument rien.<br/><br/>
      Bonne programmation à tous!<br/>
      Cordialement,<br/>
      Mars073</p>

    Aide à l'apprentissage et la réalisation pour des graphismes, des programmes, des sites ou autres.Signature aléatoire, proposez vous aussi une signature ici!

    1 Reply Last reply
    3
    • S
      S
      Soon
      wrote on last edited by
      #2

      <p>Merci du partage l'ami.</p>

      1 Reply Last reply
      0
      • AzadA
        AzadA
        Azad
        wrote on last edited by
        #3

        <p>Belle introduction, bien joué Mars. 🙂 <br/>
        +1 Rep.<br/><br/>
        N'hésitez pas à le remercier si jamais cela vous a été utile.</p>

        Administrateur du forum.
        Contactez-moi par message privé ou par mail.

        1 Reply Last reply
        0

        Hello! It looks like you're interested in this conversation, but you don't have an account yet.

        Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

        With your input, this post could be even better 💗

        Register Login
        Reply
        • Reply as topic
        Log in to reply
        • Oldest to Newest
        • Newest to Oldest
        • Most Votes


        • Login

        • Login or register to search.
        Powered by NodeBB Contributors
        • First post
          Last post
        0
        • Categories
        • Recent
        • Tags
        • Popular
        • World
        • Users
        • Groups