24 Oct
Et voici une petite réponse d’Apple aux publicités promotionnelles de Windows Vista, dans lesquelles nous pouvions voir Bill Gates et Jerry Seinfeld. Des publicités des plus étranges, pour lesquelles je dois avouer ne pas avoir tout compris. Je vous laisse juger la réponse de la Pomme.
Pas complètement fictive cette publicité, vous ne trouvez pas ? :p
22 Jul
Je suis tombé aujourd’hui sur un script complètement inutile. Son but ? Mettre un effet miroir sur vos textes. Comment cela fonctionne-t-il ? Simplement en jouant avec les codes UTF-8 des différents caractères.
Il y a tant de caractères exotiques dont l’existence est inconnue… Pour vous amuser à les découvrir, c’est simple (du moins, sous Windows). Activez votre clavier numérique, laissez appuyé Alt gauche, et saisissez des séries de 4 chiffres. Le plus connu, le copyright.
Alt + 0169 = ©
14 Jul
Comme indiqué dans un billet précédent, le calendrier est un widget sympathique que j’aime retrouver sur un blog. Il permet de cibler une période de l’année particulière (Noël, nouvel an, etc.). Cependant, force est de constater que le calendrier fourni par défaut par WordPress est plutôt lourd à utiliser.
Pourquoi s’amuser à recharger toute la page pour simplement changer de mois alors qu’une ancienne technologie appellée XMLHttpRequest existe ? C’est pourquoi, en cherchant sur la toile, je suis tombé sur un plugin répondant parfaitement à mes besoins : WP-Ajax-Calendar.
Pour le voir en action, regardez dans le menu à droite. Pour l’installer, c’est très simple. Il suffit de l’activer dans la partie d’administration (partie Plugins), et de remplacer la ligne d’appel de votre calendrier par :
Il ne vous restera alors plus qu’à personnaliser votre feuille de style. Etape sans doute la plus difficile. ;)
26 Jun
Afin d’augmenter un maximum l’ergonomie de vos formulaires Web, il peut être utile de mettre en place un script d’upload d’images en Ajax. Celui-ci permettra, par exemple, de ne pas laisser attendre l’internaute sur une page tierce, ni de recharger entièrement la page actuelle. Cette technique, évitant des lourdeurs certaines, n’est cependant pas aussi simple que cela à mettre en place : Ajax ne permet pas d’uploader des images. C’est dit.
Si l’upload de photos n’est pas permis en Ajax, nous n’allons pas utiliser celui-ci. Nous nous contenterons du Javascript. Plutôt que de s’embarquer dans une théorie longue et imbuvable, regardons immédiatement un exemple.
On commence par la réalisation d’un formulaire classique d’upload d’image.
Voici un formulaire tout ce qu’il y a de plus normal. On n’oublie surtout pas de spécifier l’attribut enctype dans la balise form, ainsi que la taille du fichier grâce à l’input hidden ci-dessus.
Notre upload d’images ergonomique réside en fait dans l’attribut target. On lui spécifie une iframe comme cible. Ainsi, plutôt que de recharger intégralement toute la page, le formulaire se contentera d’envoyer la page de résultat du script upload.php à l’intérieur de la frame concernée. Voyons donc le code de la frame en question…
Celle-ci est vide à l’origine. Et pour cause, elle ne servira qu’à récolter la réponse de l’envoi du formulaire. On remarque le display: none; permettant de ne pas polluer l’affichage.
On rajoute aussi une image, sans aucun attribut, si ce n’est un id. Cela n’est pas valide W3C, nous sommes d’accord. Remarquez que la frame n’est pas non plus très conseillée, mais bon, passons… Pour rendre votre code valide, il serait possible d’insérer dynamiquement l’image et la frame, lorsque vous en aurez besoin, via Javascript. Cependant, pour des raisons de simplicité d’explications, nous n’atteindrons pas un tel niveau de rigueur.
Le script upload.php nous retourne le code suivant :
Et c’est tout. Ainsi, notre image verra sa source modifiée, et sera donc dynamiquement mise à jour. Le tout sans rechargement sauvage de toute la page. Mission accomplie !
A noter que je laisse le soin au lecteur de gérer de manière sécurisée le téléchargement de l’image du client vers le serveur, chacun ayant ses petites habitudes en la matière. ;)
10 Apr
Parfois, il peut-être utile d’envoyer un formulaire en appuyant sur la touche Enter. Cela est d’autant plus vrai que cela n’est pas tout le temps géré automatiquement. Par exemple, un formulaire sans bouton submit. Comment alors exécuter une action à la saisie de la touche Enter ?
Un peu de Javascript et de gestion des évènements nous y aidera. Tout d’abord, définissons une fonction.
Il est important de gérer les propriétés event.which et event.keyCode dans un but de compatibilité maximale. De même, on spécifie l’évènement dans les paramètres, afin de ne pas oublier les navigateurs n’ayant pas de gestionnaire global d’évènements.
On appelle alors cette fonction très simplement. Exemple :
Il ne vous reste plus qu’à l’implémenter sur tous vos formulaires. A vos claviers ! Prêt ? Go !