tfeserver : Blog de tfe

Catégorie javascript - posté le 17/06/09 21:08:42

Rien d'extraordinaire ici, juste une petite astuce visant à modifier le style d'une page web dynamiquement, sans recharger l'ensemble de la page.

Contexte: une page web ayant au moins un style css du type
<link rel="stylesheet" href="style.css" type="text/css" />

Code pour retirer le style actuel:
var links=document.getElementsByTagName('link');
for (i=0;i<links.length;i++)
{
links[i].parentNode.removeChild(links[i]);
}
Ajouter un style:
var link = document.createElement('link');
link.href='/style.css';
link.type='text/css';link.rel='stylesheet';
document.getElementsByTagName('head')[0].appendChild(link);

Suite au commentaire de kapouik, vous pouvez aussi visiter la page d'exemple.

1 commentaire(s) javascript astuce

Catégorie Astuce - posté le 08/02/09 10:38:49

Je cherchais depuis longtemps une manière de fermer les blocks de codes avec vim sans réelement trouver, jusqu'à ce que je ne découvre que cela s'appelle le "folding".
Cette option permets  d'avoir une vision globale du code, sans entrer dans les détails.

Sans Folding
  1 if(1==2=)
  2 {
  3     blahb lah
  4     blahb lah
  5 }
Avec Folding
  1 if(1==2=)
  2 {
  3 +--  2 líneas: blahb lah------------------------
  5 } 
Pour l'astuce donc: il faut activer le mode folding:
:set fdm=indent
Puis pour ouvrir/fermes les blocks, alterne via les touches "zM" (tout fermer), et "zR" (tout ouvrir), "zo" ouvrir le block", "zc" fermer le block.

0 commentaire(s) astuce vim editeur texte

Catégorie Développement - posté le 27/06/08 14:28:02

Prenons une table toute simple:
create table matable (id serial, nombre varchar NULL);

Insérons-y 3 lignes:
insert into matable (nombre) VALUES (0);
insert into matable (nombre) VALUES (1);
insert into matable;

Maintenant sélectionnons les lignes ayant un nombre=1 (1 résultat)
select id,nombre from matable where nombre=1;

Pour inverser la requête donc: (1 résultat)
select id,nombre from matable where nombre!=1;
Nous remarquons que la ligne ayant un nombre=NULL n'a pas été sélectionnée...
La fonction SQL coalesce nous permet de palier a ce problème de manière simple: cette fonction selectionne le premier element non null d une liste:
select coalesce(nombre,-1) from matable nous retourne l'ensemble des nombre, remplaçant les NULL par des -1.

Pour inverser la requête nous pouvons donc faire:
select id,nombre from matable where coalesce(nombre,0) != 1;

Note: Nous aurions aussi pu faire select id,nombre from matable where nombre!=1 or nombre is null , mais du coup il n'y aurait pas eu d'astuce :).

0 commentaire(s) programmation sql astuce