jQuery UI

jQuery UI est un complément de jQuery, qui permet notamment d’améliorer l’interface utilisateur. Beaucoup de confort ajouté et grande simplicité d'utilisation.

Déplacer une div

<!doctype html>
<html>
    <head>
        <script src="http://code.jquery.com/jquery-latest.js"></script>
        <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
        <style>
        #deplace { width: 150px; height: 150px; padding: 0.5em; border: 1px solid #000; }
        </style>
        <script>
        $(function() {
            $( "#deplace" ).draggable();
        });
        </script>
    </head>
    <body>
        <div id="deplace" class="ui-widget-content">
            <p>Déplace moi</p>
        </div>
    </body>
</html>

Redimensionner une boite

Pour que l’exemple fonctionne, ne pas oublier de lier le CSS externe du thème choisi.

<!doctype html>
<html>
    <head>
        <script src="http://code.jquery.com/jquery-latest.js"></script>
        <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
        <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css">
        <style>
        #redimensionne { width: 150px; height: 150px; padding: 0.5em; border: 1px solid #000; }
        #redimensionne h3 { text-align: center; margin: 0; }
        </style>
        <script>
        $(function() {
            $( "#redimensionne" ).resizable();
        });
        </script>
    </head>
    <body>
        <div id="redimensionne" class="ui-widget-content">
            <h3 class="ui-widget-header">redimensionne</h3>
        </div>
    </body>
</html>

jQuery UI : date et formulaire

Pour le moment, seuls Chrome et Opera proposent un calendrier sur un champ <input type='date'>
En attendant, jQuery peut vous dépanner.

<!doctype html>
<html>
    <head>
        <link rel="stylesheet" href=" http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css">
        <script src="http://code.jquery.com/jquery-latest.js"></script>
        <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
        <script>
        $(function() {
            $( "#champdate" ).datepicker();
        });
        </script>
    </head>
    <body>
        <label>Date : </label>
        <input type="text" id="champdate">
    </body>
</html>

Barre de progression

Même s'il existe une balise <progress> en HTML 5, la barre de progression jQuery permet une grande compatibilité et toutes les facilités du jQuery pour la manipuler.

<!doctype html>
<html>
    <head>
        <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css">
        <script src="http://code.jquery.com/jquery-latest.js"></script>
        <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
        <script>
        $(function() {
            $( "#progressbar" ).progressbar({
                value: 37
            });
        });
        </script>
    </head>
    <body>
        <div id="progressbar"></div>
    </body>
</html>

L'accordéon

La fonction jQuery accordion() permet de fermer ou d'ouvrir le contenu d'une balise.

<!doctype html>
<html>
    <head>
        <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css">
        <script src="http://code.jquery.com/jquery-latest.js"></script>
        <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
        <script>
        $(function() {
            $( "#accordion" ).accordion();
        });
        </script>
    </head>
    <body>
        <div id="accordion">
            <h3>Section 1</h3>
            <div>
                <p>
                Mauris mauris ante, blandit et, ultrices a, suscipit eget, quam. Integer
                ut neque. Vivamus nisi metus, molestie vel, gravida in, condimentum sit
                amet, nunc. Nam a nibh. Donec suscipit eros. Nam mi. Proin viverra leo ut
                odio. Curabitur malesuada. Vestibulum a velit eu ante scelerisque vulputate.
                </p>
            </div>
            <h3>Section 2</h3>
            <div>
                <p>
                Sed non urna. Donec et ante. Phasellus eu ligula. Vestibulum sit amet
                purus. Vivamus hendrerit, dolor at aliquet laoreet, mauris turpis porttitor
                velit, faucibus interdum tellus libero ac justo. Vivamus non quam. In
                suscipit faucibus urna.
                </p>
            </div>
            <h3>Section 3</h3>
            <div>
                <p>
                Nam enim risus, molestie et, porta ac, aliquam ac, risus. Quisque lobortis.
                Phasellus pellentesque purus in massa. Aenean in pede. Phasellus ac libero
                ac tellus pellentesque semper. Sed ac felis. Sed commodo, magna quis
                lacinia ornare, quam ante aliquam nisi, eu iaculis leo purus venenatis dui.
                </p>
                <ul>
                <li>List item one</li>
                <li>List item two</li>
                <li>List item three</li>
                </ul>
            </div>
            <h3>Section 4</h3>
            <div>
                <p>
                Cras dictum. Pellentesque habitant morbi tristique senectus et netus
                et malesuada fames ac turpis egestas. Vestibulum ante ipsum primis in
                faucibus orci luctus et ultrices posuere cubilia Curae; Aenean lacinia
                mauris vel est.
                </p>
                <p>
                Suspendisse eu nisl. Nullam ut libero. Integer dignissim consequat lectus.
                Class aptent taciti sociosqu ad litora torquent per conubia nostra, per
                inceptos himenaeos.
                </p>
            </div>
        </div>
    </body>
</html>

Message

Plutôt que d'utiliser les boites d'alertes JavaScript au look un peu désuet comme alert() et confirm(), je vous invite à tester les boites de dialogue de jQuery UI.

<!doctype html>
<html>
<head>
  <meta charset="utf-8">
  <title>jQuery UI</title>
  <link rel="stylesheet" href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
  <script src="https://code.jquery.com/jquery-latest.js"></script>
  <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
  <script>
  $( function() {
    $( "#confirmation" ).dialog({
      resizable: false,
      height: "auto",
      width: 400,
      modal: true,
      buttons: {
        "Supprimer définitivement": function() {
          $( this ).dialog( "close" );
        },
        "Abandonner": function() {
          $( this ).dialog( "close" );
        }
      }
    });
  } );
  </script>
</head>
<body>
 
<div id="confirmation" title="Vider la corbeille ?">
  <p><span class="ui-icon ui-icon-alert" style="float:left; margin:12px 12px 20px 0;"></span>Les éléments seront définitivement effacés. Êtes-vous sûr ?</p>
</div>
 
<p>jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. jQuery, j'adore. </p>
</body>
</html>

Articles connexes