mozilla

Revision 273462 of 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 : 273462
  • Créé :
  • Créateur : BenoitL
  • Version actuelle ? Non
  • Commentaire 226 words added, 172 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

If you're an extension developer, you should start by reading Updating extensions for Firefox 3.5, which offers a helpful overview of what changes may affect your extension.

Nouveaux composants et nouvelles fonctionnalités

Supporting private browsing mode
Firefox 3.5 offers Private Browsing mode, which doesn't record the user's activities.  Extensions may support private browsing following the guidelines offered by this article.
Security changes in Firefox 3.5
This article covers security-related changes in Firefox 3.5.
Theme changes in Firefox 3.5
This article covers theme-related changes in Firefox 3.5.
Monitoring WiFi access points
Code with UniversalXPConnect privileges can now monitor the list of available access points, getting information on their SSIDs, MAC addresses, and signal strength.  This can be used in tandem with Geolocation to offer WiFi-based location service.

Changements et améliorations notables

  • The XUL textbox widget now offers a search type, for use as search fields.
  • In order to support dragging and dropping tabs between windows, the browser widget now has a swapDocShells() method.
  • Added the level attribute to the panel element; this specifies whether panels appear on top of other applications, or just on top of the window the panel is contained within.
  • XUL elements now support the clientHeight, clientWidth, scrollHeight, and scrollWidth properties.
  • keysets now include a disabled attribute.
  • In addition, keysets can now be removed using the node's removeChild() method.
  • mozIStorageStatement had the initialize() method removed; consumers should use the createStatement() method instead to get a new statement object.
  • The Storage API now offers support for asynchronous requests.
  • The nsICookie2 interface now exposes the time at which cookies were created in its new creationTime attribute.
  • Added a flag to nsIProtocolHandler (URI_IS_LOCAL_RESOURCE) that is checked during chrome registration to make sure a protocol is allowed to be registered.
  • Firefox now looks for plugins in /usr/lib/mozilla/plugins on Linux, as well as the previously supported locations.
  • The plugin API has been updated to include support for private browsing mode; you may now use NPN_GetValue() to query the state of private browsing mode using the 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>If you're an extension developer, you should start by reading <a class="internal" href="/En/Updating_extensions_for_Firefox_3.5" title="en/Updating extensions for Firefox 3.5">Updating extensions for Firefox 3.5</a>, which offers a helpful overview of what changes may affect your extension.</p>
<h4>Nouveaux composants et nouvelles fonctionnalités</h4>
<dl> <dt><a class="internal" href="/En/Supporting_private_browsing_mode" title="en/Supporting private browsing mode">Supporting private browsing mode</a></dt> <dd>Firefox 3.5 offers Private Browsing mode, which doesn't record the user's activities.  Extensions may support private browsing following the guidelines offered by this article.</dd> <dt><a class="internal" href="/En/Security_changes_in_Firefox_3.5" title="en/Security changes in Firefox 3.5">Security changes in Firefox 3.5</a></dt> <dd>This article covers security-related changes in Firefox 3.5.</dd> <dt><a class="internal" href="/En/Theme_changes_in_Firefox_3.5" title="en/Theme changes in Firefox 3.5">Theme changes in Firefox 3.5</a></dt> <dd>This article covers theme-related changes in Firefox 3.5.</dd> <dt><a class="internal" href="/En/Monitoring_WiFi_access_points" title="en/Monitoring WiFi access points">Monitoring WiFi access points</a></dt> <dd>Code with UniversalXPConnect privileges can now monitor the list of available access points, getting information on their SSIDs, MAC addresses, and signal strength.  This can be used in tandem with Geolocation to offer WiFi-based location service.</dd>
</dl>
<h4>Changements et améliorations notables</h4>
<ul> <li>The XUL <code><a class="internal" href="/en/XUL/textbox" rel="internal">textbox</a></code> widget now offers a <code><a class="internal" href="/en/XUL/Attribute/textbox.type" rel="internal">search</a></code> type, for use as search fields.</li> <li>In order to support dragging and dropping tabs between windows, the <a class="internal" href="/en/XUL/browser" title="en/XUL/Browser"><code>browser</code></a> widget now has a <a class="internal" href="/En/XUL/Method/SwapDocShells" title="en/XUL/Method/SwapDocShells"><code>swapDocShells()</code></a> method.</li> <li>Added the <a class="internal" href="/En/XUL/Attribute/Panel.level" title="en/XUL/Attribute/panel.level"><code>level</code></a> attribute to the <a class="internal" href="/en/XUL/panel" title="en/XUL/Panel"><code>panel</code></a> element; this specifies whether panels appear on top of other applications, or just on top of the window the panel is contained within.</li> <li>XUL elements now support the<code> clientHeight</code>,<code> clientWidth</code>,<code> scrollHeight</code>, and<code> scrollWidth </code>properties.</li> <li><a class="internal" href="/en/XUL/keyset" title="en/XUL/Keyset"><code>keyset</code></a>s now include a <code>disabled</code> attribute.</li> <li>In addition, <code>keyset</code>s can now be removed using the node's <a class="internal" href="/En/DOM/Node.removeChild" title="en/DOM/Node.removeChild"><code>removeChild()</code></a> method.</li> <li><span class="lang lang-en"><code><a href="/en/mozIStorageStatement" rel="internal">mozIStorageStatement</a></code> </span> had the <code>initialize()</code> method removed; consumers should use the <span class="lang lang-en"><code><a href="/en/mozIStorageConnection#createStatement()" rel="internal">createStatement()</a></code> </span> method instead to get a new statement object.</li> <li>The <a class="internal" href="/en/Storage" title="en/Storage">Storage</a> API now offers support for asynchronous requests.</li> <li>The <a class="internal" href="/en/nsICookie2" title="En/NsICookie2"><code>nsICookie2</code></a> interface now exposes the time at which cookies were created in its new <code>creationTime</code> attribute.</li> <li>Added a flag to <code><a class="internal" href="/en/nsIProtocolHandler" rel="internal">nsIProtocolHandler</a></code> (<code>URI_IS_LOCAL_RESOURCE</code>) that is checked during chrome registration to make sure a protocol is allowed to be registered.</li> <li>Firefox now looks for plugins in <code>/usr/lib/mozilla/plugins</code> on Linux, as well as the previously supported locations.</li> <li>The plugin API has been updated to include support for private browsing mode; you may now use <a class="internal" href="/en/NPN_GetValue" title="en/NPN GetValue"><code>NPN_GetValue()</code></a> to query the state of private browsing mode using the 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