Firefox 3.5 pour les développeurs

  • Raccourci de la révision : Firefox_3.5_pour_les_développeurs
  • Titre de la révision : Firefox 3.5 pour les développeurs
  • ID de la révision : 273463
  • Créé :
  • Créateur : BenoitL
  • Version actuelle ? Non
  • Commentaire 377 words added, 285 words removed

Contenu de la révision

Firefox 3.5 introduit un certain nombre de nouvelles fonctionnalités, ainsi qu'une gestion améliorée d'une grande variété de standards du Web. Cet article en fournit une longue liste, avec des liens vers des articles décrivant les améliorations majeures.

Nouvelles fonctionnalités pour les développeurs dans Firefox 3.5

Pour les développeurs de sites et d'applications web

HTML5

Utilisation d'audio et video dans Firefox
Firefox 3.5 ajoute la gestion des éléments HTML5 audio et video.
Ressources hors ligne dans Firefox
Firefox 3.5 gère entièrement la spécification de ressources hors ligne d'HTML5.
Glisser et déposer
L'API de glisser/déposer d'HTML5 permet de gérer le glisser/déposer d'éléments à l'intérieur et entre des sites web. Elle fournit également une API plus simple pour les extensions et applications basées sur Mozilla.

Nouvelles fonctionnalités CSS

Gestion des polices téléchargeables
La nouvelle règle-@ @font-face permet aux pages web de fournir des polices téléchargeables, afin qu'elles puissent être affichées exactement telles que l'auteur de la page les attend.
Media queries
Firefox 3.5 gère les requêtes de médias, qui améliorent le traitement des feuilles de style destinées à des médias particuliers.
Mise à jour de {{ cssxref(":before") }} et {{ cssxref(":after") }} pour CSS 2.1
Les pseudo-éléments :before et :after ont été mis à jour pour respecter complètement CSS 2.1, avec l'ajout des propriétés position, float et list-style-*, ainsi que de certaines valeurs de display.
Unité de longueur ch
L'unité ch peut à présent être utilisée à tout endroit où peut être indiquée une unité de longueur. 1ch est la largeur du caractère « 0 » (zéro).
{{ cssxref("opacity") }}
L'extension à CSS -moz-opacity de Mozilla a été supprimée en faveur de la propriété standard opacity.
{{ cssxref("text-shadow") }}
La propriété text-shadow, qui permet à du contenu web de spécifier des effets d'ombres sur le texte et les décorations de texte est à présent gérée.
{{ cssxref("word-wrap") }}
Cette nouvelle propriété permet au contenu d'indiquer si oui ou non les lignes de texte peuvent être coupées au milieu d'un mot afin d'empêcher un débordement lorsqu'une chaîne normalement insécable est trop longue pour rentrer dans une seule ligne.
Valeur pre-line pour la propriété white-space
La propriété {{ cssxref("white-space") }} accepte à présent la valeur pre-line.
{{ cssxref("-moz-box-shadow") }}
{{ cssxref("-moz-border-image") }}
{{ cssxref("-moz-column-rule") }}
{{ cssxref("-moz-column-rule-width") }}
{{ cssxref("-moz-column-rule-style") }}
{{ cssxref("-moz-column-rule-color") }}
La gestion de ces extensions à CSS de Mozilla a été ajoutée dans Firefox 3.5.
La {{ cssxref("valeur_de_couleur#Extensions_spécifiques_à_Mozilla","-moz-nativehyperlinktext") }}
Cette nouvelle valeur de couleur représente la couleur de lien hypertexte par défaut de l'utilisateur du système.
La nouvelle propriété {{ cssxref("-moz-window-shadow") }} et la pseudo-classe {{ cssxref(":-moz-system-metric(mac-graphite-theme)") }}
Ces nouvelles fonctionnalités CSS ont été ajoutées pour faciliter la mise en place de thèmes.
Nouvelles valeurs pour {{ cssxref("-moz-appearance") }}
Les valeurs -moz-win-glass et -moz-mac-unified-toolbar ont été ajoutées à -moz-appearance.
Utilisation des transformations CSS
Firefox 3.5 gère les transformations CSS. Consultez {{ cssxref("-moz-transform") }} et {{ cssxref("-moz-transform-origin") }} pour plus de détails.
{{ cssxref(":nth-child") }}
{{ cssxref(":nth-last-child") }}
{{ cssxref(":nth-of-type") }}
{{ cssxref(":nth-last-of-type") }}
{{ cssxref(":first-of-type") }}
{{ cssxref(":last-of-type") }}
{{ cssxref(":only-of-type") }}
Ces sélecteurs sont nouvellement gérés dans Firefox 3.5

Nouvelles fonctionnalités DOM

localStorage
Firefox 3.5 ajoute la gestion de la propriété localStorage pour le stockage web, fournissant ainsi une manière pour les applications web de stocker des données localement sur l'ordinateur du client.
Utilisation de workers DOM
Firefox 3.5 gère les workers DOM afin de permettre une gestion multithreadée dans les applications web.
Utilisation de la géolocalisation
Firefox 3.5 gère l'API Geolocation, qui permet aux applications web d'obtenir des informations concernant l'emplacement actuel de l'utilisateur si cette information est fournie et activée dans le système.
Identification d'éléments DOM à l'aide de sélecteurs
L'API Selectors permet d'interroger un document afin d'identifier les éléments correspondant à une règle de sélection donnée.
Évènements de mouvement de souris
Firefox 3.5 gère les évènements de mouvements de souris dont les glissades sur un trackpad.
L'objet NodeIterator
L'objet NodeIterator permet de parcourir la liste de nœuds dans un sous-arbre DOM.
L'évènement MozAfterPaint
Ce nouvel évènement DOM est envoyé après les mises à jour de l'affichage dans les fenêtres.
L'évènement MozMousePixelScroll
Ce nouvel évènement DOM permet de détecter les évènements de défilement à la souris par pixels plutôt que par ligne.

Nouvelles fonctionnalités JavaScript

Nouveautés dans JavaScript 1.8.1
Un aperçu de tous les changements dans JavaScript 1.8.1.
Object.getPrototypeOf()
Cette nouvelle méthode renvoie le prototype d'un objet spécifié.
Utilisation de JSON dans Firefox
La gestion de JSON est à présent intégrée dans le DOM.
Nouvelles méthodes de nettoyage des espaces sur l'objet String
L'objet String dispose à présent des méthodes trim(), trimLeft() et trimRight().

Réseau

Contrôle d'accès entre sites pour HTTP
Dans Firefox 3.5, il devient possible pour les requêtes HTTP, notamment celles faites au travers d'XMLHttpRequest, de fonctionne entre différents domaines si le serveur le permet.
Évènements de progression pour XMLHttpRequest
Des évènements de progression sont à présent émis pour permettre aux extensions de surveiller l'état des requêtes.
Amélioration des appels XMLHttpRequest synchrones
Les timeouts DOM et les évènements d'entrée sont à présent supprimés pendant un appel XMLHttpRequest synchrone.
Contrôle du préchargement DNS
Firefox 3.5 permet le préchargement DNS, par lequel il effectue la résolution des noms de domaines à l'avance pour les liens présents dans la page courante, afin de gagner du temps lorsque l'on clique effectivement sur ces liens. Cet article explique comment adapter votre site pour désactiver le préchargement, ou contrôler le comportement de ce préchargement.

Nouvelles fonctionnalités de Canvas

API HTML5 text pour les éléments canvas
Les éléments canvas gèrent à présent l'API texte d'HTML5.
Effets d'ombres dans un canvas
Les effets d'ombrages sont à présent gérés dans canvas.
createImageData()
La méthode createImageData() de canvas est à présent gérée, ce qui permet à du code de créer spécifiquement un objet ImageData plutôt que demander que ce soit fait automatiquement. Les performances d'autres méthodes d'ImageData peuvent en être améliorées puisqu'elles n'ont pas à créer l'objet.
Attribut moz-opaque
L'attribut DOM moz-opaque a été ajouté, ce qui permet à canvas de savoir si oui ou non la transparence devra être prise en compte. Si le canvas sait qu'il n'y a pas de transparence, les performances de dessin peuvent être optimisées.

Nouvelles fonctionnalités SVG

Application d'effets SVG à du contenu HTML
Vous pouvez à présent appliquer des effets SVG à du contenu HTML et XHTML ; cet article explique comment.

Autres nouvelles fonctionnalités

Correction de couleurs ICC dans Firefox
Firefox 3.5 gère à présent la correction de couleurs ICC pour les images balisées.
L'attribut defer est géré sur les éléments script
Cet attribut indique au navigateur qu'il peut décider de continuer d'analyser et d'afficher la page sans attendre que le script ait terminé son exécution.

Autres améliorations

  • La propriété wholeText et la méthode replaceWholeText() ont été ajoutées aux nœuds texte.
  • La propriété element.children a été ajoutée. Elle renvoie une collection d'éléments enfants de l'élément donné.
  • L'API Element Traversal est à présent gérée par l'objet DOM Element.
  • Les nœuds HTML document peuvent à présent être clonés à l'aide de cloneNode().
  • La méthode DOM non-standard getBoxObjectFor() a été supprimée. Utilisez plutôt getBoundingClientRect().
  • Les éléments DOM dispatchés peuvent être redispatchés. Ceci permet à Firefox 3.5 de passer le test 30 d'Acid 3.
  • Des améliorations ont été apportés à la gestion de DOM 2 Range.
  • Dans un contexte non-chrome, les objets catchés dans les exceptions sont à présent les objets rejetés tels quels plutôt qu'une enveloppe XPConnect contenant ces objets.
  • Les références ID dans SVG sont à présent directes.
  • Les filtres SVG fonctionnent à présent avec foreignObject.
  • La méthode GetSVGDocument() a été ajoutée aux éléments object et iframe pour assurer une meilleure compatibilité.
  • La définition implicite de propriétés dans des initialiseurs d'objets et de tableaux n'exécute plus les mutateurs en JavaScript. Consultez le billet Object and array initializers should not invoke setters when evaluated pour plus de détails.
  • La variable gDownloadLastDir.path a été renommée en gDownloadLastDir.file étant donné qu'elle fait référence à un objet {{ interface("nsIFile") }} et non à un chemin.
  • La variable gDownloadLastDirPath a été renommée en gDownloadLastDirFile étant donné qu'elle fait référence à un objet {{ interface("nsIFile") }} et non à un chemin.
  • À partir de Firefox 3.5, il devient impossible d'utiliser des liaisons data: dans les paquets chrome qui bénéficient de l'automatisation XPCNativeWrapper.

Pour les développeurs XUL et développeurs d'applications

Si vous développez des extensions, vous devriez tout d'abord lire Mise à jour des extensions pour Firefox 3.5 qui fournit un aperçu pratique des changements qui pourraient affecter vos extensions.

Nouveaux composants et nouvelles fonctionnalités

Gestion du mode de navigation privée
Firefox 3.5 offre un mode de navigation privée, qui n'enregistre pas les activités de l'utilisateur. Les extensions peuvent gérer la navigation privée en suivant les conseils donnés dans cet article.
Changements liés à la sécurité dans Firefox 3.5
Cet article détaille les changements liés à la sécurité dans Firefox 3.5.
Changements dans les thèmes pour Firefox 3.5
Cet article détaille les changements liés aux thèmes dans Firefox 3.5.
Surveillance des points d'accès WiFi
Le code disposant des privilèges UniversalXPConnect peut à présent surveiller la liste des points d'accès disponibles, et obtenir des informations concernant leurs SSID, adresses MAC et force du signal. Ceci peut être utilisé couplé avec la géolocalisaiton pour fournir des services locaux basés sur la présence d'un WiFi.

Changements et améliorations notables

  • Le widget XUL textbox offre à présent un type search, pour être utilisé en tant que champ de recherche.
  • Afin de gérer le glisser et déposer d'onglets entre les fenêtres, le widget browser dispose à présent d'une méthode swapDocShells().
  • Ajout de l'attribut level à l'élément panel ; celui-ci indique si le panel apparait par dessus les autres applications, ou uniquement au-dessus de la fenêtre contenant le panel.
  • Les éléments XUL gèrent à présent les propriétés clientHeight, clientWidth, scrollHeight et scrollWidth.
  • Les éléments keyset disposent à présent d'un attribut disabled.
  • De plus, les keysets peuvent être supprimés à l'aide de la méthode removeChild() du nœud.
  • mozIStorageStatement a vu sa méthode initialize() supprimée ; ses utilisateurs doivent utiliser la méthode createStatement() à la place pour obtenir un nouvel objet statement.
  • L'API Storage permet à présent d'effectuer des requêtes asynchrones.
  • L'interface nsICookie2 expose à présent l'heure à laquelle les cookies ont été créés dans son nouvel attribut creationTime.
  • Un flag a été ajouté à nsIProtocolHandler (URI_IS_LOCAL_RESOURCE) qui est vérifié au cours d'un enregistrement chrome pour s'assurer qu'un protocole a le droit d'être enregistré.
  • Firefox recherche à présent des plugins dans /usr/lib/mozilla/plugins sous Linux, outre les emplacements précédemment consultés.
  • L'API des plugins a été mise à jour pour gérer le mode de navigation privée ; vous pouvez à présent utiliser NPN_GetValue() pour connaître l'état du mode de navigation privée à l'aide de la variable NPNVprivateModeBool.

New features for end users

User experience

Location aware browsing
If you choose, you may allow Firefox 3.5 to share information about your current location with web sites.  Firefox 3.5 can use information about the network you're connected to to share your location. Of course, it asks for your permission before doing so, to ensure your privacy.
Open audio and video support
Firefox 3.5 supports embedded video and audio using the open Ogg format, as well as WAV for audio. No plugins, no confusing error messages about needing to install something or other that turns out not to be available on your platform anyway.
Local data storage
Web applications can now use Web Storage's local storage capabilities to store data on your computer.  This is great for anything from site preferences to more complex data.

Security and privacy

Private Browsing
Need to use someone else's computer? Switch on Private Browsing mode and nothing will be recorded about your session, including cookies, history, and any other potentially private information.
Better privacy controls
The Privacy preference pane has been completely redesigned to offer users more control over their private information. Users can choose to retain or discard anything including history information, cookies, downloads, and form field information.  In addition, users can specify whether or not to include history and/or bookmarks in the location bar's automated suggestions, so you can keep private web addresses from popping up unexpectedly while typing in the location bar.

Performance

Faster JavaScript performance
JavaScript, the "J" in "AJAX," is sped up dramatically in Firefox 3.5 with the new TraceMonkey JavaScript engine.  Web applications are much faster than in Firefox 3.
Faster page rendering
Web content draws faster in Firefox 3.5, thanks to technologies such as "speculative parsing." Your users don't need to know what it means, other than "it makes things draw faster."

Voir également

{{ languages( {"en": "en/Firefox_3.5_for_developers", "ja":"Ja/Firefox_3.5_for_developers", "pl": "pl/Firefox_3.5_dla_programistów", "pt": "pt/Firefox_3.5_para_desenvolvedores", "ru": "ru/Firefox_3.5_для_разработчика", "zh-tw": "Zh_tw/Firefox_3.1_技術文件"} ) }}

Source de la révision

<p>Firefox 3.5 introduit un certain nombre de nouvelles fonctionnalités, ainsi qu'une gestion améliorée d'une grande variété de standards du Web. Cet article en fournit une longue liste, avec des liens vers des articles décrivant les améliorations majeures.</p>
<h2>Nouvelles fonctionnalités pour les développeurs dans Firefox 3.5</h2>
<h3>Pour les développeurs de sites et d'applications web</h3>
<h4>HTML5</h4>
<dl> <dt><a class="internal" href="/Fr/Utilisation_d'audio_et_video_dans_Firefox" title="fr/Utilisation d'audio et video dans Firefox">Utilisation d'audio et video dans Firefox</a></dt> <dd>Firefox 3.5 ajoute la gestion des éléments HTML5 <a class="internal" href="/fr/HTML/Element/audio" title="fr/HTML/Element/audio"><code>audio</code></a> et <a class="internal" href="/Fr/HTML/Element/Video" title="fr/HTML/Element/video"><code>video</code></a>.</dd> <dt><a class="internal" href="/fr/Ressources_hors_ligne_dans_Firefox" title="fr/Ressources hors ligne dans Firefox">Ressources hors ligne dans Firefox</a></dt> <dd>Firefox 3.5 gère entièrement la spécification de ressources hors ligne d'HTML5.</dd> <dt><a class="internal" href="/Fr/GlisserDéposer/Glisser_et_déposer" title="fr/GlisserDéposer/Glisser et déposer">Glisser et déposer</a></dt> <dd>L'API de glisser/déposer d'HTML5 permet de gérer le glisser/déposer d'éléments à l'intérieur et entre des sites web. Elle fournit également une API plus simple pour les extensions et applications basées sur Mozilla.</dd>
</dl>
<h4>Nouvelles fonctionnalités CSS</h4>
<dl> <dt><a class="internal" href="/fr/CSS/@font-face" title="fr/CSS/@font-face">Gestion des polices téléchargeables</a></dt> <dd>La nouvelle règle-@ <code>@font-face</code> permet aux pages web de fournir des polices téléchargeables, afin qu'elles puissent être affichées exactement telles que l'auteur de la page les attend.</dd> <dt><a class="internal" href="/Fr/CSS/Media_queries" title="fr/CSS/Media queries">Media queries</a></dt> <dd>Firefox 3.5 gère les requêtes de médias, qui améliorent le traitement des feuilles de style destinées à des médias particuliers.</dd> <dt>Mise à jour de {{ cssxref(":before") }} et {{ cssxref(":after") }} pour CSS 2.1</dt> <dd>Les pseudo-éléments <code>:before</code> et <code>:after</code> ont été mis à jour pour respecter complètement CSS 2.1, avec l'ajout des propriétés <code>position</code>, <code>float</code> et <code>list-style-*</code>, ainsi que de certaines valeurs de <code>display</code>.</dd> <dt>Unité de longueur <code>ch</code></dt> <dd>L'unité <code>ch</code> peut à présent être utilisée à tout endroit où peut être indiquée une <a class="internal" href="/fr/CSS/longueur#Unités" title="fr/CSS/longueur#Unités">unité de longueur</a>. <code>1ch</code> est la largeur du caractère « 0 » (zéro).</dd> <dt>{{ cssxref("opacity") }}</dt> <dd>L'extension à CSS <code>-moz-opacity</code> de Mozilla a été supprimée en faveur de la propriété standard <code>opacity</code>.</dd> <dt>{{ cssxref("text-shadow") }}</dt> <dd>La propriété <code>text-shadow</code>, qui permet à du contenu web de spécifier des effets d'ombres sur le texte et les décorations de texte est à présent gérée.</dd> <dt>{{ cssxref("word-wrap") }}</dt> <dd>Cette nouvelle propriété permet au contenu d'indiquer si oui ou non les lignes de texte peuvent être coupées au milieu d'un mot afin d'empêcher un débordement lorsqu'une chaîne normalement insécable est trop longue pour rentrer dans une seule ligne.</dd> <dt>Valeur <code>pre-line</code> pour la propriété <code>white-space</code></dt> <dd>La propriété {{ cssxref("white-space") }} accepte à présent la valeur <code>pre-line</code>.</dd> <dt>{{ cssxref("-moz-box-shadow") }}</dt> <dt>{{ cssxref("-moz-border-image") }}</dt> <dt>{{ cssxref("-moz-column-rule") }}</dt> <dt>{{ cssxref("-moz-column-rule-width") }}</dt> <dt>{{ cssxref("-moz-column-rule-style") }}</dt> <dt>{{ cssxref("-moz-column-rule-color") }}</dt> <dd>La gestion de ces extensions à CSS de Mozilla a été ajoutée dans Firefox 3.5.</dd> <dt>La {{ cssxref("valeur_de_couleur#Extensions_spécifiques_à_Mozilla","-moz-nativehyperlinktext") }}</dt> <dd>Cette nouvelle valeur de couleur représente la couleur de lien hypertexte par défaut de l'utilisateur du système.</dd> <dt>La nouvelle propriété {{ cssxref("-moz-window-shadow") }} et la pseudo-classe {{ cssxref(":-moz-system-metric(mac-graphite-theme)") }}</dt> <dd>Ces nouvelles fonctionnalités CSS ont été ajoutées pour faciliter la mise en place de thèmes.</dd> <dt>Nouvelles valeurs pour {{ cssxref("-moz-appearance") }}</dt> <dd>Les valeurs <code>-moz-win-glass</code> et <code>-moz-mac-unified-toolbar</code> ont été ajoutées à <code>-moz-appearance</code>.</dd> <dt><a class="internal" href="/fr/CSS/Utilisation_des_transformations_CSS" title="fr/CSS/Utilisation des transformations CSS">Utilisation des transformations CSS</a></dt> <dd>Firefox 3.5 gère les transformations CSS. Consultez {{ cssxref("-moz-transform") }} et {{ cssxref("-moz-transform-origin") }} pour plus de détails.</dd> <dt>{{ cssxref(":nth-child") }}</dt> <dt>{{ cssxref(":nth-last-child") }}</dt> <dt>{{ cssxref(":nth-of-type") }}</dt> <dt>{{ cssxref(":nth-last-of-type") }}</dt> <dt>{{ cssxref(":first-of-type") }}</dt> <dt>{{ cssxref(":last-of-type") }}</dt> <dt>{{ cssxref(":only-of-type") }}</dt> <dd>Ces sélecteurs sont nouvellement gérés dans Firefox 3.5</dd>
</dl>
<h4>Nouvelles fonctionnalités DOM</h4>
<dl> <dt><a class="internal" href="/fr/DOM/Storage#localStorage" title="fr/DOM/Storage#localStorage">localStorage</a></dt> <dd>Firefox 3.5 ajoute la gestion de la propriété <code>localStorage</code> pour le stockage web, fournissant ainsi une manière pour les applications web de stocker des données localement sur l'ordinateur du client.</dd> <dt><a class="internal" href="/fr/Utilisation_de_workers_web" title="fr/Utilisation de workers DOM">Utilisation de workers DOM</a></dt> <dd>Firefox 3.5 gère les workers DOM afin de permettre une gestion multithreadée dans les applications web.</dd> <dt><a class="internal" href="/fr/Utilisation_de_la_géolocalisation" title="fr/Utilisation_de_la_géolocalisation">Utilisation de la géolocalisation</a></dt> <dd>Firefox 3.5 gère l'API Geolocation, qui permet aux applications web d'obtenir des informations concernant l'emplacement actuel de l'utilisateur si cette information est fournie et activée dans le système.</dd> <dt><a class="internal" href="/fr/DOM/Identification_d'éléments_DOM_à_l'aide_de_sélecteurs" title="fr/DOM/Identification d'éléments DOM à l'aide de sélecteurs">Identification d'éléments DOM à l'aide de sélecteurs</a></dt> <dd>L'API Selectors permet d'interroger un document afin d'identifier les éléments correspondant à une règle de sélection donnée.</dd> <dt><a class="internal" href="/fr/DOM/Évènements_de_mouvement_de_souris" title="fr/DOM/Évènements de mouvement de souris">Évènements de mouvement de souris</a></dt> <dd>Firefox 3.5 gère les évènements de mouvements de souris dont les glissades sur un trackpad.</dd> <dt><a class="internal" href="/fr/DOM/NodeIterator" title="fr/DOM/NodeIterator">L'objet <code>NodeIterator</code></a></dt> <dd>L'objet <code>NodeIterator</code> permet de parcourir la liste de nœuds dans un sous-arbre DOM.</dd> <dt><a class="internal" href="/fr/Évènements_DOM_spécifiques_à_Gecko#MozAfterPaint" title="fr/Évènements DOM spécifiques à Gecko#MozAfterPaint">L'évènement MozAfterPaint</a></dt> <dd>Ce nouvel évènement DOM est envoyé après les mises à jour de l'affichage dans les fenêtres.</dd> <dt><a class="internal" href="/fr/Évènements_DOM_spécifiques_à_Gecko#MozMousePixelScroll" title="fr/Évènements DOM spécifiques à Gecko#MozMousePixelScroll">L'évènement MozMousePixelScroll</a></dt> <dd>Ce nouvel évènement DOM permet de détecter les évènements de défilement à la souris par pixels plutôt que par ligne.</dd>
</dl>
<h4>Nouvelles fonctionnalités JavaScript</h4>
<dl> <dt><a class="internal" href="/fr/Nouveautés_dans_JavaScript_1.8.1" title="fr/Nouveautés dans JavaScript 1.8.1">Nouveautés dans JavaScript 1.8.1</a></dt> <dd>Un aperçu de tous les changements dans JavaScript 1.8.1.</dd> <dt><a class="internal" href="/fr/Référence_de_JavaScript_1.5_Core/Objets_globaux/Object/GetPrototypeOf" title="Référence de JavaScript 1.5 Core/Objets globaux/Object/GetPrototypeOf"><code>Object.getPrototypeOf()</code></a></dt> <dd>Cette nouvelle méthode renvoie le prototype d'un objet spécifié.</dd> <dt><a class="internal" href="/fr/Utilisation_de_JSON_dans_Firefox" title="fr/Utilisation de JSON dans Firefox">Utilisation de JSON dans Firefox</a></dt> <dd>La gestion de <a class="internal" href="/fr/JSON" title="fr/JSON">JSON</a> est à présent intégrée dans le DOM.</dd> <dt>Nouvelles méthodes de nettoyage des espaces sur l'objet String</dt> <dd>L'objet <a class="internal" href="/fr/Référence_de_JavaScript_1.5_Core/Objets_globaux/String" title="fr/Référence de JavaScript 1.5 Core/Objets globaux/String"><code>String</code></a> dispose à présent des méthodes <a class="internal" href="/fr/R%C3%A9f%C3%A9rence_de_JavaScript_1.5_Core/Objets_globaux/String/Trim" rel="internal"><code>trim()</code></a>, <a class="internal" href="/fr/R%C3%A9f%C3%A9rence_de_JavaScript_1.5_Core/Objets_globaux/String/TrimLeft" rel="internal"><code>trimLeft()</code></a> et <a class="internal" href="/fr/R%C3%A9f%C3%A9rence_de_JavaScript_1.5_Core/Objets_globaux/String/TrimRight" rel="internal"><code>trimRight()</code></a>.</dd>
</dl>
<h4>Réseau</h4>
<dl> <dt><a class="internal" href="/fr/Contrôle_d'accès_HTTP" title="fr/Contrôle d'accès HTTP">Contrôle d'accès entre sites pour HTTP</a></dt> <dd>Dans Firefox 3.5, il devient possible pour les requêtes HTTP, notamment celles faites au travers d'<a class="internal" href="/fr/XMLHttpRequest" title="fr/XMLHttpRequest"><code>XMLHttpRequest</code></a>, de fonctionne entre différents domaines si le serveur le permet.</dd> <dt><a class="internal" href="/fr/Utilisation_de_XMLHttpRequest#Suivi_de_la_progression" title="fr/Utilisation de XMLHttpRequest#Suivi de la progression">Évènements de progression pour <code>XMLHttpRequest</code></a></dt> <dd>Des évènements de progression sont à présent émis pour permettre aux extensions de surveiller l'état des requêtes.</dd> <dt><a class="internal" href="/fr/Utilisation_de_XMLHttpRequest#Suivi_de_la_progression" title="fr/Utilisation de XMLHttpRequest#Suivi de la progression">Amélioration des appels <code>XMLHttpRequest</code> synchrones </a></dt> <dd>Les <a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=340345" title="https://bugzilla.mozilla.org/show_bug.cgi?id=340345">timeouts DOM</a> et les <a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=333198" title="https://bugzilla.mozilla.org/show_bug.cgi?id=333198">évènements d'entrée</a> sont à présent supprimés pendant un appel <code>XMLHttpRequest</code> synchrone.</dd> <dt><a class="internal" href="/fr/Contrôle_du_préchargement_DNS" title="fr/Contrôle du préchargement DNS">Contrôle du préchargement DNS</a></dt> <dd>Firefox 3.5 permet le préchargement DNS, par lequel il effectue la résolution des noms de domaines à l'avance pour les liens présents dans la page courante, afin de gagner du temps lorsque l'on clique effectivement sur ces liens. Cet article explique comment adapter votre site pour désactiver le préchargement, ou contrôler le comportement de ce préchargement.</dd>
</dl>
<h4>Nouvelles fonctionnalités de Canvas</h4>
<dl> <dt><a class="internal" href="/fr/Dessin_de_texte_avec_canvas" title="fr/Dessin de texte avec canvas">API HTML5 text pour les éléments <code>canvas</code></a></dt> <dd>Les éléments canvas gèrent à présent l'API texte d'HTML5.</dd> <dt><a class="internal" href="/fr/Tutoriel_canvas/Ajout_de_styles_et_de_couleurs#Ombres" title="fr/Tutoriel canvas/Ajout de styles et de couleurs#Ombres">Effets d'ombres dans un <code>canvas</code></a></dt> <dd>Les effets d'ombrages sont à présent gérés dans canvas.</dd> <dt><a class="internal" href="/fr/HTML/Canvas/Manipulation_de_pixels_avec_canvas#Création_d'un_objet_ImageData" title="fr/HTML/Canvas/Manipulation de pixels avec canvas#Création d'un objet ImageData"><code>createImageData()</code></a></dt> <dd>La méthode <code>createImageData()</code> de canvas est à présent gérée, ce qui permet à du code de créer spécifiquement un objet <code>ImageData</code> plutôt que demander que ce soit fait automatiquement. Les performances d'autres méthodes d'<code>ImageData</code> peuvent en être améliorées puisqu'elles n'ont pas à créer l'objet.</dd> <dt>Attribut <code>moz-opaque</code></dt> <dd>L'attribut DOM <code>moz-opaque</code> a été ajouté, ce qui permet à canvas de savoir si oui ou non la transparence devra être prise en compte. Si le canvas sait qu'il n'y a pas de transparence, les performances de dessin peuvent être optimisées.</dd>
</dl>
<h4>Nouvelles fonctionnalités SVG</h4>
<dl> <dt><a class="internal" href="/fr/Application_d'effets_SVG_à_du_contenu_HTML" title="fr/Application d'effets SVG à du contenu HTML">Application d'effets SVG à du contenu HTML</a></dt> <dd>Vous pouvez à présent appliquer des effets SVG à du contenu HTML et XHTML ; cet article explique comment.</dd>
</dl>
<h4>Autres nouvelles fonctionnalités</h4>
<dl> <dt><a class="internal" href="/fr/Correction_de_couleurs_ICC_dans_Firefox" title="fr/Correction de couleurs ICC dans Firefox">Correction de couleurs ICC dans Firefox</a></dt> <dd>Firefox 3.5 gère à présent la correction de couleurs ICC pour les images balisées.</dd> <dt>L'attribut <code>defer</code> est géré sur les éléments <a class="internal" href="/fr/HTML/Element/script" title="fr/HTML/Element/script"><code>script</code></a></dt> <dd>Cet attribut indique au navigateur qu'il <em>peut</em> décider de continuer d'analyser et d'afficher la page sans attendre que le script ait terminé son exécution.</dd>
</dl>
<h3>Autres améliorations</h3>
<ul> <li>La propriété <code><a class="internal" href="/fr/DOM/Text.wholeText" rel="internal">wholeText</a></code> et la méthode <code><a class="internal" href="/fr/DOM/Text.replaceWholeText" rel="internal">replaceWholeText()</a></code> ont été ajoutées aux nœuds texte.</li> <li>La propriété <code><a class="internal" href="/fr/DOM/Element.children" rel="internal">element.children</a></code> a été ajoutée. Elle renvoie une <em>collection</em> d'éléments enfants de l'élément donné.</li> <li>L'API Element Traversal est à présent gérée par l'objet DOM <a class="internal" href="/fr/DOM/element" rel="internal">Element</a>.</li> <li>Les nœuds HTML document peuvent à présent être clonés à l'aide de <a class="internal" href="/fr/DOM/Node.cloneNode" title="fr/DOM/Node.cloneNode"><code>cloneNode()</code></a>.</li> <li>La méthode DOM non-standard <code>getBoxObjectFor()</code> a été supprimée. Utilisez plutôt <a class="internal" href="/fr/DOM/element.getBoundingClientRect" title="fr/DOM/Element.getBoundingClientRect"><code>getBoundingClientRect()</code></a>.</li> <li>Les éléments DOM dispatchés peuvent être redispatchés. Ceci permet à Firefox 3.5 de passer le test 30 d'Acid 3.</li> <li>Des améliorations ont été apportés à la gestion de DOM 2 Range.</li> <li>Dans un contexte non-chrome, les objets catchés dans les exceptions sont à présent les objets rejetés tels quels plutôt qu'une enveloppe <a class="internal" href="/fr/XPConnect" title="fr/XPConnect">XPConnect</a> contenant ces objets.</li> <li>Les références ID dans SVG sont à présent directes.</li> <li>Les filtres SVG fonctionnent à présent avec <code>foreignObject</code>.</li> <li>La méthode <code>GetSVGDocument()</code> a été ajoutée aux éléments <a class="internal" href="/fr/HTML/Element/object" title="fr/HTML/Element/Object"><code>object</code></a> et <a class="internal" href="/fr/HTML/Element/iframe" title="fr/HTML/Element/Iframe"><code>iframe</code></a> pour assurer une meilleure compatibilité.</li> <li>La définition implicite de propriétés dans des initialiseurs d'objets et de tableaux n'exécute plus les mutateurs en JavaScript. Consultez le billet <a class="internal" href="/web-tech/2009/04/29/object-and-array-initializers-should-not-invoke-setters-when-evaluated" title="web-tech/2009/04/29/object-and-array-initializers-should-not-invoke-setters-when-evaluated">Object and array initializers should not invoke setters when evaluated</a> pour plus de détails.</li> <li>La variable <code>gDownloadLastDir.path</code> a été renommée en <code>gDownloadLastDir.file</code> étant donné qu'elle fait référence à un objet {{ interface("nsIFile") }} et non à un chemin.</li> <li>La variable <code>gDownloadLastDirPath</code> a été renommée en <code>gDownloadLastDirFile</code> étant donné qu'elle fait référence à un objet {{ interface("nsIFile") }} et non à un chemin.</li> <li>À partir de Firefox 3.5, il devient impossible d'utiliser des liaisons <code>data:</code> dans les paquets chrome qui bénéficient de l'automatisation <code>XPCNativeWrapper</code>.</li>
</ul><h2 name="Pour_les_d.C3.A9veloppeurs_XUL_et_d.C3.A9veloppeurs_d.27applications">Pour les développeurs XUL et développeurs d'applications</h2>
<p>Si vous développez des extensions, vous devriez tout d'abord lire <a class="internal" href="/fr/Mise_à_jour_des_extensions_pour_Firefox_3.5" title="fr/Mise à jour des extensions pour Firefox 3.5">Mise à jour des extensions pour Firefox 3.5</a> qui fournit un aperçu pratique des changements qui pourraient affecter vos extensions.</p>
<h4>Nouveaux composants et nouvelles fonctionnalités</h4>
<dl> <dt><a class="internal" href="/fr/Gestion_du_mode_de_navigation_privée" title="fr/Gestion du mode de navigation privée">Gestion du mode de navigation privée</a></dt> <dd>Firefox 3.5 offre un mode de navigation privée, qui n'enregistre pas les activités de l'utilisateur. Les extensions peuvent gérer la navigation privée en suivant les conseils donnés dans cet article.</dd> <dt><a class="internal" href="/fr/Changements_liés_à_la_sécurité_dans_Firefox_3.5" title="fr/Changements liés à la sécurité dans Firefox 3.5">Changements liés à la sécurité dans Firefox 3.5</a></dt> <dd>Cet article détaille les changements liés à la sécurité dans Firefox 3.5.</dd> <dt><a class="internal" href="/fr/Changements_dans_les_thèmes_pour_Firefox_3.5" title="fr/Changements dans les thèmes pour Firefox 3.5">Changements dans les thèmes pour Firefox 3.5</a></dt> <dd>Cet article détaille les changements liés aux thèmes dans Firefox 3.5.</dd> <dt><a class="internal" href="/fr/Surveillance_des_points_d'accès_WiFi" title="fr/Surveillance des points d'accès WiFi">Surveillance des points d'accès WiFi</a></dt> <dd>Le code disposant des privilèges UniversalXPConnect peut à présent surveiller la liste des points d'accès disponibles, et obtenir des informations concernant leurs SSID, adresses MAC et force du signal. Ceci peut être utilisé couplé avec la géolocalisaiton pour fournir des services locaux basés sur la présence d'un WiFi.</dd>
</dl>
<h4>Changements et améliorations notables</h4>
<ul> <li>Le widget XUL <code><a class="internal" href="/fr/XUL/textbox" rel="internal">textbox</a></code> offre à présent un type <code><a class="internal" href="/fr/XUL/Attribute/textbox.type" rel="internal">search</a></code>, pour être utilisé en tant que champ de recherche.</li> <li>Afin de gérer le glisser et déposer d'onglets entre les fenêtres, le widget <a class="internal" href="/fr/XUL/browser" title="fr/XUL/Browser"><code>browser</code></a> dispose à présent d'une méthode <a class="internal" href="/fr/XUL/Méthodes/SwapDocShells" title="fr/XUL/Méthodes/SwapDocShells"><code>swapDocShells()</code></a>.</li> <li>Ajout de l'attribut <a class="internal" href="/fr/XUL/Attributs/Panel.level" title="fr/XUL/Attributs/panel.level"><code>level</code></a> à l'élément <a class="internal" href="/fr/XUL/panel" title="fr/XUL/Panel"><code>panel</code></a> ; celui-ci indique si le panel apparait par dessus les autres applications, ou uniquement au-dessus de la fenêtre contenant le panel.</li> <li>Les éléments XUL gèrent à présent les propriétés <code>clientHeight</code>, <code>clientWidth</code>, <code>scrollHeight</code> et <code>scrollWidth</code>.</li> <li>Les éléments <a class="internal" href="/fr/XUL/keyset" title="fr/XUL/Keyset"><code>keyset</code></a> disposent à présent d'un attribut <code>disabled</code>.</li> <li>De plus, les <code>keyset</code>s peuvent être supprimés à l'aide de la méthode <a class="internal" href="/fr/DOM/Node.removeChild" title="fr/DOM/Node.removeChild"><code>removeChild()</code></a> du nœud.</li> <li><code><a href="/fr/mozIStorageStatement" rel="internal">mozIStorageStatement</a></code> a vu sa méthode <code>initialize()</code> supprimée ; ses utilisateurs doivent utiliser la méthode <code><a href="/fr/mozIStorageConnection#createStatement()" rel="internal">createStatement()</a></code> à la place pour obtenir un nouvel objet statement.</li> <li>L'API <a class="internal" href="/fr/Storage" title="fr/Storage">Storage</a> permet à présent d'effectuer des requêtes asynchrones.</li> <li>L'interface <a class="internal" href="/fr/nsICookie2" title="fr/NsICookie2"><code>nsICookie2</code></a> expose à présent l'heure à laquelle les cookies ont été créés dans son nouvel attribut <code>creationTime</code>.</li> <li>Un flag a été ajouté à <code><a class="internal" href="/fr/nsIProtocolHandler" rel="internal">nsIProtocolHandler</a></code> (<code>URI_IS_LOCAL_RESOURCE</code>) qui est vérifié au cours d'un enregistrement chrome pour s'assurer qu'un protocole a le droit d'être enregistré.</li> <li>Firefox recherche à présent des plugins dans <code>/usr/lib/mozilla/plugins</code> sous Linux, outre les emplacements précédemment consultés.</li> <li>L'API des plugins a été mise à jour pour gérer le mode de navigation privée ; vous pouvez à présent utiliser <a class="internal" href="/fr/NPN_GetValue" title="fr/NPN GetValue"><code>NPN_GetValue()</code></a> pour connaître l'état du mode de navigation privée à l'aide de la variable <code>NPNVprivateModeBool</code>.</li>
</ul><h2>New features for end users</h2>
<h3>User experience</h3>
<dl> <dt>Location aware browsing</dt> <dd>If you choose, you may allow Firefox 3.5 to share information about your current location with web sites.  Firefox 3.5 can use information about the network you're connected to to share your location. Of course, it asks for your permission before doing so, to ensure your privacy.</dd> <dt>Open audio and video support</dt> <dd>Firefox 3.5 supports embedded video and audio using the open Ogg format, as well as WAV for audio. No plugins, no confusing error messages about needing to install something or other that turns out not to be available on your platform anyway.</dd> <dt>Local data storage</dt> <dd>Web applications can now use Web Storage's local storage capabilities to store data on your computer.  This is great for anything from site preferences to more complex data.</dd>
</dl>
<h3>Security and privacy</h3>
<dl> <dt>Private Browsing</dt> <dd>Need to use someone else's computer? Switch on Private Browsing mode and nothing will be recorded about your session, including cookies, history, and any other potentially private information.</dd> <dt>Better privacy controls</dt> <dd>The Privacy preference pane has been completely redesigned to offer users more control over their private information. Users can choose to retain or discard anything including history information, cookies, downloads, and form field information.  In addition, users can specify whether or not to include history and/or bookmarks in the location bar's automated suggestions, so you can keep private web addresses from popping up unexpectedly while typing in the location bar.</dd>
</dl>
<h3>Performance</h3>
<dl> <dt>Faster JavaScript performance</dt> <dd>JavaScript, the "J" in "AJAX," is sped up dramatically in Firefox 3.5 with the new TraceMonkey JavaScript engine.  Web applications are much faster than in Firefox 3.</dd> <dt>Faster page rendering</dt> <dd>Web content draws faster in Firefox 3.5, thanks to technologies such as "speculative parsing." Your users don't need to know what it means, other than "it makes things draw faster."</dd>
</dl>
<h2 name="Voir_.C3.A9galement">Voir également</h2>
<ul> <li>{{ mediawiki.interwiki('wikimo', 'Firefox3.1', 'Firefox 3.1 planning center') }} (en anglais)</li> <li><a href="/fr/Firefox_3_pour_les_développeurs" title="fr/Firefox_3_pour_les_développeurs">Firefox 3 pour les développeurs</a></li> <li><a href="/fr/Firefox_2_pour_les_développeurs" title="fr/Firefox_2_pour_les_développeurs">Firefox 2 pour les développeurs</a></li> <li><a href="/fr/Firefox_1.5_pour_les_développeurs" title="fr/Firefox_1.5_pour_les_développeurs">Firefox 1.5 pour les développeurs</a></li>
</ul>
<p>{{ languages( {"en": "en/Firefox_3.5_for_developers", "ja":"Ja/Firefox_3.5_for_developers", "pl": "pl/Firefox_3.5_dla_programistów", "pt": "pt/Firefox_3.5_para_desenvolvedores", "ru": "ru/Firefox_3.5_для_разработчика", "zh-tw": "Zh_tw/Firefox_3.1_技術文件"} ) }}</p>
Revenir à cette révision