
L’objet window
Vous êtes ici : Accueil / Cours / Cours de Javascript / Progresser en Javascript
L’objet window a un status particulier pour Javascript : c’est l’objet racine. Ses propriétés et méthodes sont implicites, comme si le code avait été placé dans un bloc with( window ).
Il s’agit d’un objet instancié et nous n’avons pas accès à sa classe. Il existe cependant d’autres manières d’obtenir de nouvelles instances.
Propriétés de l’objet window
| Propriété | R/W | Description |
|---|---|---|
| boolean closed | R | Vaut true si la fenêtre a été fermée |
| String defaultStatus | R/W | Contient le texte de la barre de status par défaut. |
| String name | R/W | Contient le nom de la fenêtre |
| Array frames | R | Contient un tableau des cadres enfants de la fenêtre actuelle |
| int length | R | Contient le nombre de cadres |
| Window parent | R | Contient la fenêtre parente |
| Window self | R | Correspond à la fenêtre courante |
| String status | R/W | Contient de texte de la barre de status à un instant t |
| Window top | R | Contient la fenêtre à la racine de la hiérarchie |
| Window window | R | Equivalent à self |
A noter : à chaque fois que l’on utilise une variable sans la déclarer avec le mot-clé var ou qui n’est pas un paramètre formel de fonction, on manipule une propriété de l’objet window. Exemple :
test = 5;
// Affiche 5
alert( window.test );
Il en va de même pour les fonctions qui ne sont autres que des méthodes de l’objet window.
Méthodes de l’objet window
L’objet window possède
| Méthode | Description |
|---|---|
| void alert( mixed message ) | Affiche une boite de dialogue contenant la valeur de message |
| void blur() | Fait perdre le focus à la fenêtre |
| void clearInterval( int id ) | Stoppe la boucle initiée avec setInterval(). |
| void clearTimeout( int id ) | Annuelle un compte à rebours initié par setTimeout() |
| void close() | Ferme la fenêtre |
| boolean confirm( String confirmation ) | Affiche une boite de dialogue demandant une confirmation en affichant le message confirmation. |
| void focus() | Donne le focus à la fenêtre |
| void moveBy( int x, int y ) | Effectue un déplacement de la fenêtre de x pixels vers la droite et de y pixels vers le bas. ( Déplacement relatif ) |
| void moveTo( int x, int y ) | Effectue un déplacement de la fenêtre aux coordonnées (x,y) de l’écran. ( Déplacement absolu ) |
| void open( String url [, String name, [String options ]]) | Ouvre une nouvelle fenêtre ( ou un nouvel onglet suivant le navigateur) |
| void print() | Lance l’impression de la fenêtre |
| String prompt( [String message, [String defaut]] ) | Affiche une boite de dialogue demandant d’entrer une valeur. Par défaut, la valeur est default |
| void resizeBy( int w, int h ) | Redimensionne la fenêtre de x pixels horizontalement et de y pixels verticalement. ( Redimensionnement relatif ) |
| void resizeTo( int w, int h ) | Redimensionne la fenêtre aux valeurs (w,h). ( Redimensionnement absolu ) |
| void scrollBy( int h ) | Déplace la barre de défilement de h pixels vers le bas. ( Scroll relatif ) |
| void scrollTo( int h ) | Positionne la barre de défilement àh pixels du haut. ( Scroll absolu ) |
| int setInterval( String code, int intevalle ) | Exécute du code dans un autre thread en boucle tous les intervalle millisecondes. |
| int setTimeout( String code, int delai ) | Exécute du code dans un autre thread avec un délai de delai millisecondes. |
Ouvrir une fenêtre
Il n’est pas possible d’accéder au constructeur de l’objet window, en revanche, il existe une méthode pour créer de nouvelles fenêtres. Face à l’abus de l’utilisation des fenêtres popup à des fins de publicité, les navigateurs ont inclus des systèmes de blocage des fenêtres. Les fenêtres ne sont donc pas certaines de s’afficher.
La méthode pour ouvrir une fenêtre est open( String url [, String name, [String options ]]).
Le paramètre url contient l’adresse de la page qui va s’afficher. Laissez le vide pour afficher une page blanche.
name correspond au nom de la fenêtre dans laquelle la page va s’afficher. Le nom correspond à l’attribut name dans les balises de frame. Les valeurs _self, _parent, _top, _blank.
Les options de fenêtre servent à définir ses différentes propriétés lors de l’instanciation. Le paramètre option se présente donc sous la forme d’une liste de ces paramètres séparés par une virgule : option1=valeur1,option2=valeur2...
| Option | Valeur | Description |
|---|---|---|
| directories | yes/no | Affiche ou non les boutons de navigation. Par défaut, yes. |
| height | valeur en pixels | Hauteur de la fenêtre |
| left | valeur en pixels | Position de la fenêtre par rapport à la gauche de l’écran |
| location | yes/no | Affiche ou non la barre de location. Par défaut, yes |
| menubar | yes/no | Affiche ou non la barre de menu. Par défaut, yes |
| resizable | yes/no | Désactive ou non le redimensionnement. Par défaut, yes |
| scrollbars | yes/no | Affiche ou non les barres de défilement. Par défaut, yes |
| status | yes/no | Affiche ou non la barre de status. Par défaut, yes |
| toolbar | yes/no | Affiche ou non la barre d’outils. Par défaut, yes |
| top | valeur en pixels | Position de le fenêtre par rapport au haut de l’écran. |
| width | valeur en pixels | Largeur de la fenêtre. |
Astuce : lorsque vous mettez plus d’une option, il est souvent plus lisible de les stocker sous forme d’un tableau, puis d’appeler la méthode join() du tableau créé, en spécifiant la virgule comme séparateur.
Exemple :
'width=500px',
'height=200px'
];
// Ouvre une fenêtre de 500px de longueur par 200px de hauteur, contenant le site pateysoft.
var w = open( 'http://www.pateysoft.fr',
'_blank',
options.join( ',' ) );



