
Here is the source code for the Google logo. Originally it uses google object for event listening and browser detection, switched to jQuery. You can find a working example here : http://quebe.ca/doodle.html
Web 2.0, Photo, Vidéo

var text = "Bonjour"; //la variable text est un objet string
var chiffre = 0; // la variable chiffre n'est pas un objet String
//Voici comment la convertir en objet string
chiffre = chiffre + ''; //si la variable a été définie plus haut
var chiffre = 0+''; //ou encore lorsqu'on la définie
//Lorsque vous obtenez la valeur d'un élément input, il s'agit d'un objet String
var valeur = document.getElementById("id_du_input").value; //la variable valeur est maintenant un objet String
//Vous pouvez aussi directement créer un objet String
var texte = new String("Bonjour");
//On définie une variable pour l'exemple
var texte = "Bonjour";
/*********************
Propriétés
**********************/
//// length
// Retourne le nombre de caractères d'une chaîne
var longueur = texte.length; // Dans l'exemple, longueur = 7
/*********************
Méthodes
**********************/
//// toLowerCase()
// Retourne le texte en lettres minuscules
var minuscules = texte.toLowerCase("bonjour"); // minuscules = "bonjour"
//// toUpperCase()
// Retourne le texte en lettres majuscules
var majuscules = texte.toUpperCase("bonjour"); // majuscules = "BONJOUR"
//// substr(debut [,longueur])
//Retourne une partie d'une chaîne
/ *le premier caractère est à la position 0*/
var soustexte = texte.substr(3); // Réduit la chaîne à partir de la positon 3. Dans l'exemple, soustexte = "jour"
var soustexte = texte.substr(1,3); // Réduit la chaîne à 3 caractères à partir de la position 1. soustexte = "onj"
//// indexOf(texte)
//Retourne la position d'un ou plusieurs caractères dans une chaîne
//La fonction retourne la position du premier caractère trouvé
//Retourne -1 si les caractères ne sont pas trouvés
var position = texte.indexOf("o"); // position = 1
var position = texte.indexOf("j"); // position = 3
var position = texte.indexOf("ur"); // position = 5
var position = texte.indexOf("z"); // position = -1
//// lastIndexOf(texte)
//Retourne la position d'un ou plusieurs caractères dans une chaîne
//La fonction retourne la position du premier caractère trouvé
//Retourne -1 si les caractères ne sont pas trouvés
var position = texte.lastIndexOf("o"); // position = 4
//// split(separateur)
//Retourne un tableau contenant la chaîne séparé selon le séparateur
//Si le séparateur n'est pas trouvé on retourne un tableau avec comme seul élément la chaîne.
var phrase = "Je m'en suis rappelé hier comme si ça me serait arrivé demain."; //Jean Perron
var tableau = phrase.split(" "); // Dans l'exemple, tableau = ["Je","m'en","suis","rappelé","hier","comme","si","ça","me","serait","arrivé","demain."];
//trim()
//retourne la chaîne sans les espaces au début et à la fin.
String.prototype.trim = function () {
return this.replace(/^\s+|\s+$/g, "");
};
//noaccent()
//retourne la chaîne sans les accents (Vous pouvez en ajouter)
String.prototype.noaccent = function() {
return this.replace(/[àâä]/gi,"a").replace(/[éèêë]/gi,"e").replace(/[îï]/gi,"i").replace(/[ôö]/gi,"o").replace(/[ùûü]/gi,"u");
};
//ucfirst()
//retourne la chaîne avec la première lettre en majuscule
String.prototype.ucfirst = function() {
return (this.length == 1)? this.toUpperCase():(this.substr(0,1).toUpperCase()+this.substr(1));
};
//ucwords()
//retourne la chaîne avec la première lettre de chaque mot en majuscule
String.prototype.ucwords = function() {
var words = this.split(" ");
var uwords = [];
for(var i = 0; i < words.length; i++) {
uwords.push( ((words[i]+"").length == 1) ? (words[i]+"").toUpperCase():((words[i]+"").substr(0,1).toUpperCase()+(words[i]+"").substr(1)) );
}
return uwords.join(" "); //transforme un tableau en une chaîne
};
//Premièrement on ajoute une fonction à l'objet String pour pouvoir enlever les accents
String.prototype.noaccent = function() {
return this.replace(/[àâä]/gi,"a").replace(/[éèêë]/gi,"e").replace(/[îï]/gi,"i").replace(/[ôö]/gi,"o").replace(/[ùûü]/gi,"u");
};
//Ensuite on ajoute notre nouveau sélecteur :search() à l'objet jQuery
jQuery.extend(jQuery.expr[':'], {
'search' : function(a,i,m) {
var content = ((a.textContent || a.innerText || '') +'').noaccent();
var words = m[3].noaccent().split(" ");
for(var j = 0; j < words.length; j++) {
if(content.toLowerCase().indexOf( words[j].toLowerCase() ) >= 0) {
return true;
}
}
return false;
}
});
//Cet exemple ajoute la classe "found" à tous les éléments li qui contiennent le texte montreal, montréal, Montreal ou Montréal
$("ul li:search('montreal')").addClass("found");
$(function() {
//On ajoute un événement au TextBox lorsqu'une touche est pressé
$("input.query").keyup(function() {
//On stocke le texte saisi dans une variable
var query = jQuery.trim($(this).val());
if(!query.length) {
$("ul.list li").show(); // S'il n'y a pas de texte saisie (ou seulement des espaces) on affiche tous les éléments li
} else {
//Sinon on fait une boucle qui passe à travers tous les éléments li
$("ul.list li").each(function() {
if( $(this).is(":search('"+query+"')") ) {
$(this).show(); //Si l'élément contient le texte on l'affiche
} else {
$(this).hide(); //On cache tous les autres
}
});
}
});
});
/////////////////////////////////////////////
//Obtenir le timestamp actuel
/////////////////////////////////////////////
var timestamp = Math.round((new Date()).getTime()/1000);
/***************************
Note :
La fonction getTime() en javascript retourne un timestamp en millisecondes, donc on divise par 1000 pour obtenir un timestamp en secondes
***************************/
/////////////////////////////////////////////
//Obtenir le timestamp du 1er janvier 2009
/////////////////////////////////////////////
var timestamp = Math.round((new Date(2009,0,1)).getTime()/1000);
/***************************
Note :
Les paramètres de Date sont :
Date(année,mois,jour)
Date(année,mois,jour,heures,minutes,secondes)
Les mois commence à 0 donc le mois de janvier est 0 et non 1 et le mois de décembre est 11
***************************/
function maFonction() {
var variableCachee = "une variable cachée";
}
alert(variableCachee); // Retourne une erreur car la variable est inaccessible à l'extérieur de la fonction.
/////////////////
//Autre exemple//
/////////////////
// Variable globale
var x = 0;
(function() {
// Variable privée
var x = 1;
alert(x); // Renvoi 1
})();
alert(x); // Renvoie 0
(function() {
// Variable "cachées"
var varChache1 = 1;
var varChache2 = 1;
var varChache3 = 1;
})();
alert(varChache1); // retourne une erreur car la variable est seulement accessible à l'intérieur de la fonction sans nom
function maFonction() {
this.variable = "Ceci est une variable";
function autreFonction() {
alert(this.variable); //Retourne une erreur car this est maintenant relatif à autreFonction
}
}
function maFonction() {
//On attribue la variable this à une autre variable nommé self
var self = this;
self.variable = "Ceci est une variable";
function autreFonction() {
alert(self.variable); //Retourne "Ceci est une variable"
}
}
$("#bouton").click(function() {
//On attribue l'élément en cours à une variable pour pouvoir l'utiliser dans les fonctions suivantes
var bouton = $(this);
bouton.val("Chargement...");
//On fait par exemple une requète AJAX
$.get("/contact.php",function(data) {
//La variable «bouton», déclarée plus haut, nous permet d'accéder à l'élément «bouton» même à l'intérieur d'une autre fonction.
bouton.val("Terminé");
});
}
//Déclaration de la classe
function MaClasse() {
//...
}
//Création d'une instance de la classe
var classe = new MaClasse();
//Création d'une deuxième instance de la classe
var classe2 = new MaClasse();
//...
function MaClasse() {
//...
}
//Déclaration d'une variable publique
MaClasse.prototype.variablePublique = "Ceci est une variable publique";
//Déclaration d'une fonction publique
MaClasse.prototype.fonctionPublique = function() {
alert(this.variablePublique);
};
//Création d'une instance de la classe
var classe = new MaClasse();
//Utilisation d'une fonction publique
classe.fonctionPublique(); //Renvoie le texte contenu dans classe.variablePublique
//Vous pouvez aussi modifier la valeur d'une variable publique
classe.variablePublique = "Nouveau message";
classe.fonctionPublique(); //Renvoie "Nouveau message"
//Déclaration de la classe
function MaClasse() {
//on stocke la référence à this dans une variable.
var self = this;
//Déclaration d'une variable privée
var variablePrivee = "Ceci est une variable privée";
//Déclaration d'une variable publique
this.variablePublique = "Ceci est une variable publique";
//Déclaration d'une fonction privée
var fonctionPrivee = function() {
alert(self.variablePrivee); //Renvoie la valeur de la variable privée
};
}
//Création d'une instance de la classe
var classe = new MaClasse();
classe.fonctionPrivee(); //retourne une erreur car la fonction est privée
alert(classe.variablePrivee); //retourne une ereur car la variable est privée
alert(classe.variablePublique); //renvoie "Ceci est une variable publique"
//Déclaration de la classe
function MaClasse() {
//...
}
MaClasse.variableStatique = "Ceci est une variable statique";
MaClasse.fonctionStatique = function () {
alert(MaClasse.variableStatique);
};
//Création d'une instance de la classe
var classe = new MaClasse();
classe.fonctionStatique(); //retourne une erreur car la fonction est statique est invisible par une instance de la classe
//Une fonction statique est accessible directement à partir de la classe
MaClasse.fonctionStatique(); // Renvoie "Ceci est une variable statique";
//Déclaration de la classe
function MaClasse() {
//on stocke la référence à this dans une variable.
var self = this;
//Déclaration d'une variable privée
var variablePrivee = "Ceci est une variable privée";
//Déclaration d'une fonction privée
this.fonctionPrivilegiee = function() {
alert(self.variablePrivee); //Renvoie la valeur de la variable privée
};
}
//Création d'une instance de la classe
var classe = new MaClasse();
classe.fonctionPrivilegiee(); //Renvoie la valeur de la variable privée
//Si vous n'avez pas déjà d'élément pour contenir le DialogBox
$("Chargement...").dialog().load("/adresse/dufichier.html");
//Créé une DialogBox dans un élément avec l'id "dialog"
$("#dialog").dialog().load("/adresse/dufichier.html");