Firefox 13 pour les développeurs
================================

Firefox 13, basé sur Gecko 13.0, est sorti le 5 juin 2012. Cette page résume les principaux changements dans Firefox 13 qui sont utiles aux développeurs.

Changements pour les développeurs Web
-------------------------------------

### HTML

* L'attribut `cellspacing` de `<table>` est désormais analysé de la manière qu'il soit en mode quirks ou non. Autrement dit, si une valeur est spécifiée en pourcentage, elle est traitée comme un certain nombre de pixels, puisque les valeurs en pourcentage ne sont pas réellement autorisée selon la spécification.
* L'élément `<wbr>` a vu son comportement bi-directionnel corrigé. Il se comporte à présent comme l'Unicode `U+200B ZERO-WIDTH SPACE` et n'affecte donc plus la bi-directionnalité de son élément parent.
* La peusdo-classe `:invalid` peut à présent être appliquée à l'élément `<form>`.
### CSS

* L'unité `turn` de la propriété `<angle>` est désormais supportée (à utiliser avec la fonction CSS `rotate()`).
* Le support d'une syntaxe de 3 à 4 valeurs pour la propriété `background-position` a été ajouté. Vous pour décaler une image de fond à partir de n'importe quel coin en écrivant par exemple "`right 10px bottom 20px`". Voir bug Firefox 522607
* Le support d'une syntaxe à 2 valeurs pour la propriété `background-repeat` a été ajouté.
* Les propriétés `-moz-border-radius*` et `-moz-box-shadow` n'ont plus de préfixe (`border-radius` ou `box-shadow`). Voir bug Firefox 693510
* La propriété `column-fill` a été implémentée (prefixée).
### JavaScript

* Le support pour la construction `for..of` (en-US) de l'ECMAScript 6 a été ajouté.
* Le support expérimental pour les objets ECMAScript 6 Map (en-US) and Set (en-US) a été ajouté.
### DOM

* L'argument `deep` de la méthode `Node.cloneNode()` est désormais optionnel, comme c'est spécifié dans DOM4.
* Les méthodes `window.setTimeout()` (en-US) et `window.setInterval()` (en-US) ne transmettent plus l'argument supplémentaire "lateness" lors du rappel de routine.
* La méthode `Blob.mozSlice()` n'a plus de préfixe.
* Le support du constructeur `Blob` a été ajouté.
* Le support de `globalStorage` a été retiré.
* La nouvelle interface `DOMRequest`, utilisée pour rapporté l'état et le résultat des opérations en arrière-plan, a été ajoutée.
* La méthode `HTMLOptionElement.index()` renvoie désormais `0` au lieu de l'incorrect `-1` lorsque `<option>` est à l'intérieur d'un élément `<datalist>`.
* `DOMException` a été implémenté selon la spécification DOM Level 4.
* L'inteface `FileError` a été supprimée en faveur de l'interface `DOMError` selon la dernière spécification FileAPI.
* L'objet `Range` ne lance plus une `RangeException`. A la place une `DOMException` est utilisée selon DOM 4.
* `element.getAttributeNS()` renvoie désormais toujours `null` au lieu d'une chaîne vide pour les attributs inexistants. Auparavant, il y avait des cas où une chaîne vide pouvait être retournée. Pour être conforme à la spécification DOM4, null doit être retourné pour les attributs inexistants.
* L'interface `HTMLCanvasElement` a maintenant une méthode non-standard, `mozFetchAsStream()`, qui fournit un flux entrant contenant les données d'image de l'élément au format spécifié.
### UA string

* Firefox Mobile ou Tablet pour Android dispose désormais d'une chaîne UA pour indiquer le style et n'a plus le signe Fennec. En outre, le nombre après "Gecko /" est à présent le numéro de version de Gecko au lieu d'une date.
* La chaîne UA n'affiche plus le numéro de correctif Gecko ou le statut de version dans le numéro de version ; le numéro de version est à présent toujours de la forme "X.Y", où X est le numéro de version majeur et Y le mineur. Par exemple, "13.0" ou "14.1". Il n'y aura plus quelque chose comme "14.0.1b1".
### SVG

* L'interface DOM `SVGStringList` (en-US) est désormais indexable comme `Array` (voir bug Firefox 722071).
### WebGL

* Le support pour l'extension `EXT_texture_filter_anisotropic` (en-US) a été ajouté. Le filtrage des textures anisotrope améliore la qualité de l'accès aux textures mipmapped lors de la visualisation d'une primitive texturée à un angle oblique.
### MathML

* Le support pour l'attribut `width` sur l'élément `<mtable> (en-US)` a été ajouté (bug Firefox 722880).
* La police MathJax est désormais utilisée comme police par défaut pour le texte mathématique are now used as the default fonts for mathematical text. Voir les polices pour le moteur MathML de Mozilla pour plus d'informations.
### Réseau

* Le protocole SPDY est désormais activé par défaut.
### Outils de développement

#### Amélioration de la vue 3D

* Vous pouvez à présent appuyer sur la touche "F" pour s'assurer que le nœud actuellement sélectionné est visible.

#### Améliorations du panneau de style

* En cliquant sur l'en-tête d'une règle dans le panneau de style (en-US) ouvre à présent l'Editeur de style correspondant au CSS.
* Un clique droit sur une règle dans le panneau de style (en-US) offre à présent une option pour copier la règle dans le presse-papiers.
* La saisie d'un nom de propriété inconnue, ou d'une valeur de propriété illégale, affiche une icône d'avertissement près de cette propriété.

#### Amélioration de l'Ardoise

* L'Ardoise a maintenant une option dans le menu Aide pour vous rendre à la documentation MDN sur l'Ardoise.
Changements pour les développeurs de Mozilla et de modules complémentaires
--------------------------------------------------------------------------

### Note de compatibilité

A partir de Firefox 13, Firefox pour Windows requiert au minimum Windows XP Service Pack 2, il ne pourra plus s'exécuter sur Windows 2000 ou les versions antérieures de Windows XP.

### Modules de code JavaScript

#### source-editor.jsm

* Le support d'un drapeau sale a été ajouté à l'API Source Editor.
* L'éditeur de source ne supporte plus de retomber sur un `<textarea>` au lieu d'utiliser Orion.
* L'éditeur expose à présent les évènements focus et blur.
* La méthode `getIndentationString()` a été ajoutée, cela renvoie la chaîne à utiliser pour l'indentation du texte dans l'éditeur.
* L'éditeur de source supporte désormais la gestion d'une liste de points d'arrêt et l'affichage de l'interface utilisateur pour les basculer sur et en dehors ; toutefois, il ne fait pas la mise en œuvre des points d'arrêt. C'est à vous d'écrire du code pour le débogueur.
* Le support pour mettre en surbrillance la ligne actuelle a été ajouté, en utilisant l'option de configuration `highlightCurrentLine`.
### ARIA

* Les propriétés CSS `margin-left`, `margin-right`, `margin-top`, `margin-bottom` sont à présent toutes reflétées dans les attributs des objets ARIA avec le même nom. Voir les attributs des objets Gecko pour plus d'informations.
### Interfaces

* L'interface `nsIScreen` supporte à présent le contrôle de la rotation via le nouvel attribut `rotation`.
* L'interface `nsIPrefBranch2` a été intégrée dans `nsIPrefBranch` (bug Firefox 718255).
* Les alias `MozOpacity`, `MozOutline`, `MozOutlineStyle`, `MozOutlineWidth`, `MozOutlineOffset` et `MozOutlineColor`, qui ont tous été retirés des précédentes versions de Gecko, ont été supprimés de `nsIDOMCSS2Properties`, qui aurait dû avoir ces alias.
* L'attribut `excludeItemIfParentHasAnnotation` de `nsINavHistoryQueryOptions` a été retiré, avec l'opération de requête correspondante. Il existait les livemarks, qui n'existent plus.
Voir aussi
----------

* Firefox 12 pour les développeurs
* Firefox 11 pour les développeurs
* Firefox 10 pour les développeurs
* Firefox 9 pour les développeurs
* Firefox 8 pour les développeurs
* Firefox 7 pour les développeurs
* Firefox 6 pour les développeurs
* Firefox 5 pour les développeurs
* Firefox 4 pour les développeurs
* Firefox 3.6 pour les développeurs
* Firefox 3.5 pour les développeurs
* Firefox 3 pour les développeurs
* Firefox 2 pour les développeurs
* Firefox 1.5 pour les développeurs