Agilité, Développement Java, Nouvelles technologies et plus…
  • rss
  • Accueil
  • Management
  • Programmation agile
  • Technologie
  • Linux
  • Evénement
  • App Android
  • Contact
  • A propos de l'auteur
  • English
  • Francais

Offrez un petit coup de jeune à votre application – CSS

Fabian Piau | mercredi 15 février 2012 - 19:47
  • Imprimer
  • Twitter
  • LinkedIn
  • Facebook
  • Pocket

 English version available

Même exempte de bogue, une application dont l’ergonomie n’a pas été bien pensée sera surement un frein pour l’utilisateur. Il est donc important de prendre un peu de temps pour améliorer le design et l’ergonomie d’une application. Même si un client ne le spécifie pas directement dans le cahier des charges, il sera toujours plus plaisant pour lui d’utiliser une application « user-friendly ». L’identité visuelle n’est pas en reste et ne doit pas être négligée. Elle est même primordiale dans certains secteurs où la concurrence est forte comme la vente en ligne ou la publicité.

Cet article va vous montrer qu’il est possible d’améliorer le design général d’une application à moindre coût. En quelques minutes, vous allez voir comment apporter une petite touche en plus à vos formulaires.

Ainsi, vous passerez de ce style d’écran :

Formulaire avant

à celui-ci :

Formulaire après

Attention, seules les versions récentes des navigateurs prendront en compte efficacement ces améliorations (Firefox 4, Internet Explorer 9 par exemple). Ceci s’explique par l’utilisation de propriétés avancées CSS3 (box-shadow, border-radius, text-shadow notamment). Sur des navigateurs plus anciens, vous obtiendrez un comportement dégradé pour ces propriétés. Les bords arrondis deviennent carrés, les ombres n’apparaissent pas… Néanmoins, le rendu final sera souvent plus joli que l’original. Je vous invite à consulter ce site https://caniuse.com/ pour accéder aux tables de compatibilité CSS3/HTML5 des navigateurs.

Voici le rendu d’origine sous IE6 :

Formulaire avant sous IE6

Et le comportement dégradé obtenu :

Formulaire après sous IE6

Quelle est l’astuce pour réaliser ce « lifting » ? Il suffit de vous rendre sur ce site : https://cssbuttongenerator.com/ qui vous permettra de créer des boutons personnalisés avec vos propres paramètres : taille, couleur, ombre, texte, effet d’enfoncement, de focus, etc. et de générer le code CSS associé (aucune image n’est nécessaire). Une fois la portion de code intégré à votre feuille de style, il vous suffira d’utiliser vos nouvelles classes sur les éléments classiques d’un formulaire (input de type button, text, textarea, etc.).

Articles similaires

Responsive Web DesignFaire du Responsive Web Design: oui, mais simplement! surveyFAQ – Sondage en ligne avec Google Forms / Drive / Docs androidListe de mes applications Android favorites printerOptimiser votre site web pour l’impression en 5 minutes
Commentaires
Pas de Commentaires »
Catégories
Programmation agile
Tags
convivial, css, ergonomie
Flux rss des commentaires Flux rss des commentaires

jQuery et Ajax

Fabian Piau | jeudi 22 septembre 2011 - 18:05
  • Imprimer
  • Twitter
  • LinkedIn
  • Facebook
  • Pocket

 English version available

Ajax

Logo Ajax

Apparu en 2005, Ajax (Asynchronous JavaScript and XML) regroupe un ensemble de technologies déjà existantes, notamment HTML, JavaScript et XML. Avec Ajax, les applications web peuvent mettre à jour partiellement la page affichée par le navigateur sans avoir à recharger la page entière. L’interface graphique peut ainsi évoluer par petits bouts, devenant ainsi plus interactive et reproduisant la sensation d’utiliser une application type client lourd. Nous parlons alors d’applications RIA (Rich Internet Applications). Le terme « Asynchronous » signifie que l’exécution du JavaScript continue sans attendre la réponse du serveur qui sera traitée quand elle arrivera. En mode synchrone, le navigateur est « gelé » en attendant la réponse du serveur.


jQuery

Logo jQuery

Initié en 2006, le projet jQuery est une bibliothèque JavaScript libre devenue très populaire. Elle permet de développer des scripts JavaScript rapidement et de manière concise, le slogan du site « Write less, do more. » (Ecrire moins, faire plus) est bien adapté ! jQuery intègre la gestion des évènements, des animations, des interactions Ajax, des selectors CSS… De plus, de nombreux plugins existent et la librairie fonctionne sur la plupart des navigateurs (cross-browser).


Ajax avec jQuery

Il y a plusieurs possibilités pour faire de l’Ajax avec jQuery.


$.get(url, data, callback, type)

$.get() permet de faire des requêtes de type GET. Il récupère la réponse dans de nombreux formats tels que XML, Html, Text, Script et Json.

	function ajouter_elements_table(elementIds) {
		$.get( 'demoajax.php', 
				{	
					'cmd': 'ajouterElements', 
					'elementSelecteds': elementIds
				}, 
				function (data) { refresh_table() });
	}



$.post(url, data, callback, type)

$.post() est l’équivalent de $.get(), mais les requêtes sont de type POST.


$.ajax(options)

$.get() et $.post() sont des implémentations plutôt haut niveau, plus faciles et simples à utiliser pour le développeur. Cependant, elles n’offrent pas autant de fonctionnalités que $.ajax(). Par exemple, la gestion de « callback » lorsque des erreurs interviennent, des options sur le cache, etc. $.ajax() ne prend qu’un seul argument qui est un objet composé de couples « clé/valeur », utilisé pour initialiser et gérer la requête.

	function ajouter_elements_table(elementIds) {
		$.ajax({ url : 'demoajax.php', 
				data : {	
					'cmd': 'ajouterElements', 
					'elementSelecteds': elementIds
				},
				cache : false,
				success : function (data) { refresh_table() }});
	}


Problème de cache avec Ajax sous Internet Explorer

J’ai travaillé sur un projet qui utilisait jQuery et des appels Ajax. J’ai utilisé la méthode $.get() pour traiter mes appels simples. Cela fonctionnait parfaitement sous Firefox, Chrome et même Internet Explorer 6. Cependant, je me suis rendu compte que sous IE7, 8 et 9, j’avais des comportements un peu aléatoires.
Après quelques recherches, j’ai réalisé qu’il s’agissait d’un problème de cache. La première fois, l’appel Ajax est correctement traité. La seconde fois, le serveur n’est pas sollicité, mais je me retrouve quand même avec la même réponse…
Désormais, je priviligie l’utilisation de $.ajax() avec l’option « cache: false ».

Articles similaires

Progress barBarre de progression sur des dates avec JQuery Clean browser cacheLes fichiers CSS et Javascript jouent à cache-cache avec les navigateurs client
Commentaires
Pas de Commentaires »
Catégories
Programmation agile
Tags
ajax, jquery, problème cache ie
Flux rss des commentaires Flux rss des commentaires
Page 10 sur 151…89101112…15
Télécharger l'app CarmaBlog

Flux RSS

  • Flux RSS RSS - Articles
  • Flux RSS RSS - Commentaires

Articles les plus vus

  • Changer la langue de Firefox - 116 367 vues
  • Réaliser un sondage en ligne avec Google Forms / Drive / Docs - 64 389 vues
  • FAQ – Sondage en ligne avec Google Forms / Drive / Docs - 56 217 vues
  • Personnaliser Gnome 3 (Shell) - 30 802 vues
  • La signification d’URL, URI et URN - 18 401 vues
  • Java EE & CDI vs. Spring - 15 983 vues
  • Open Street Map, une meilleure carte que Google Maps? - 15 789 vues
  • Comparaison NoSQL: Couchbase et MongoDB - 14 688 vues
  • API, REST, JSON, XML, HTTP, URI… Vous parlez quelle langue en fait? - 13 726 vues
  • Une première approche du Camel d’Apache - 13 584 vues

Commentaires récents

  • Fabian Piau sur FAQ – Sondage en ligne avec Google Forms / Drive / DocsOui, dans Google Forms, vous pouvez empêcher les p…
  • BENECH Fabien sur FAQ – Sondage en ligne avec Google Forms / Drive / DocsBonjour, J'ai crée 1 questionnaire via Forms,…
  • SANKARA TIDIANE sur Formation en ligne gratuite sur MongoDBJ'aimerai suivre
  • Pauline sur FAQ – Sondage en ligne avec Google Forms / Drive / DocsMerci Fabian, mais le but étant que nos clients pu…
  • Fabian Piau sur FAQ – Sondage en ligne avec Google Forms / Drive / DocsProbablement mais ces options sont en général paya…

Articles récents

  • Comment écrire un article de blog? En tout cas à ma façon! - Il y a 2 ans et 5 mois
  • Attaques de robots: vous n’êtes pas seul… - Il y a 4 ans et 3 semaines
  • Flagger – Monitorer vos déploiements Canary avec Grafana - Il y a 4 ans et 10 mois
  • Flagger – Déploiements Canary sur Kubernetes - Il y a 4 ans et 11 mois
  • Flagger – Premiers pas avec Istio et Kubernetes - Il y a 5 ans et 1 semaine
  • CoderDojo Expedia à Londres - Il y a 5 ans et 9 mois
  • Etre bénévole à Devoxx4Kids - Il y a 6 ans et 1 semaine
  • Une migration Java 11 réussie - Il y a 6 ans et 4 mois
  • Conseils pour sécuriser votre site WordPress - Il y a 6 ans et 7 mois
  • Devoxx UK 2018 – Jour 2 - Il y a 6 ans et 11 mois
  • Devoxx UK 2018 – Jour 1 - Il y a 6 ans et 11 mois
  • Wise, Revolut et Monzo, une petite révolution dans le monde des expatriés et voyageurs - Il y a 7 ans et 3 mois
  • Autocomplétion pour Git - Il y a 7 ans et 11 mois
  • Swagger, la documentation API automatisée - Il y a 8 ans et 2 mois
  • Architecture Microservices – Les bonnes pratiques - Il y a 8 ans et 7 mois
Offre moi un café

Langue

  • Français
  • English

Suivez-moi!

Suivez-moi sur Linkedin
Suivez-moi sur Twitter
Suivez-moi sur Stackoverflow
Suivez-moi sur Github
Suivez-moi sur Rss
Link to my Contact

Abonnement email

Saisissez votre adresse email pour être informé des nouveaux articles.

Étiquettes

.net agile agilité android bash blog bonnes pratiques cache cloud conférence css devoxx docker développeur eclipse extreme programming firefox flagger google helm hibernate informatique intégration continue istio java jug kubernetes londres mobilité informatique métier outil panorama partage performance plugin programmeur script société spring sécurité tdd test ubuntu windows wordpress

Liens

  • Blog Ippon Technologies
  • Blog Publicis Sapient
  • Blog Zenika
  • Classpert
  • CommitStrip
  • Coursera
  • Le Touilleur Express
  • Les Cast Codeurs Podcast
  • OCTO talks !
  • The Twelve-Factor App

Catégories

  • Evénement (15)
  • Linux (3)
  • Management (8)
  • Programmation agile (29)
  • Technologie (45)

Archives

  • décembre 2022 (1)
  • avril 2021 (1)
  • juin 2020 (1)
  • mai 2020 (2)
  • juillet 2019 (1)
  • mai 2019 (1)
  • décembre 2018 (1)
  • octobre 2018 (1)
  • juin 2018 (1)
  • mai 2018 (1)
  • janvier 2018 (1)
  • mai 2017 (1)
  • mars 2017 (1)
  • octobre 2016 (1)
  • avril 2016 (2)
  • mars 2016 (1)
  • novembre 2015 (1)
  • mai 2015 (1)
  • février 2015 (1)
  • décembre 2014 (1)
  • novembre 2014 (1)
  • septembre 2014 (2)
  • août 2014 (1)
  • juillet 2014 (2)
  • juin 2014 (1)
  • avril 2014 (1)
  • mars 2014 (1)
  • février 2014 (2)
  • janvier 2014 (1)
  • décembre 2013 (1)
  • novembre 2013 (1)
  • octobre 2013 (3)
  • septembre 2013 (5)
  • juillet 2013 (1)
  • juin 2013 (1)
  • mai 2013 (1)
  • avril 2013 (1)
  • mars 2013 (2)
  • février 2013 (1)
  • janvier 2013 (2)
  • décembre 2012 (2)
  • octobre 2012 (1)
  • septembre 2012 (1)
  • juillet 2012 (1)
  • mai 2012 (1)
  • avril 2012 (1)
  • mars 2012 (1)
  • février 2012 (1)
  • janvier 2012 (2)
  • décembre 2011 (1)
  • novembre 2011 (2)
  • octobre 2011 (2)
  • septembre 2011 (1)
  • juillet 2011 (1)
  • juin 2011 (2)
  • avril 2011 (1)
  • mars 2011 (1)
  • février 2011 (1)
  • janvier 2011 (2)
  • novembre 2010 (2)
  • septembre 2010 (1)
  • août 2010 (1)
  • juillet 2010 (1)
  • juin 2010 (1)
  • mai 2010 (1)
  • avril 2010 (1)
  • mars 2010 (1)
  • février 2010 (1)
  • décembre 2009 (1)
  • novembre 2009 (1)
  • octobre 2009 (2)
  • septembre 2009 (2)
  • août 2009 (3)
  • juillet 2009 (1)
  • juin 2009 (2)
Suivez-moi sur Twitter
Suivez-moi sur Linkedin
Suivez-moi sur Stackoverflow
Suivez-moi sur Rss
Link to my Contact
Suivez-moi sur Github
 
Fabian Piau | © 2009 - 2025
Tous droits réservés | Haut ↑