Au sein du <div id="output"> se trouve un tableau présentant les parts de marché (avril 2012) de 3 navigateurs. Il manque toutefois les données pour Firefox, données que voici :
Firefox
Mozilla
27,8%
Ajoutez les données de Firefox au sein du tableau. Remarquez que le tableau est trié selon les parts de marché ; Firefox vient donc à la seconde place.
Écrivez le code qui permet de faire ça. Dès que c'est fait, cliquez sur le bouton Exécuter le script pour exécuter le code.
Écrivez votre code
Console d'erreurs
Pas d'erreurs d'exécution ou de syntaxe
Rendu #output
Source HTML
Navigateurs
Développeurs
Parts de marché
Internet Explorer
Microsoft
33,8%
Chrome
Google
24,4%
Safari
Apple
11,8%
Solutions
La manière longue et propre
C'est le corrigé de base, avec la belle technique comme elle doit être !
var output = document.getElementById('output'),
trs;
var trNew = document.createElement('tr');
var thNavi = document.createElement('th');
var tdDevs = document.createElement('td');
var tdPart = document.createElement('td');
thNavi.setAttribute('scope', 'row');
thNavi.appendChild(document.createTextNode('Firefox'));
tdDevs.appendChild(document.createTextNode('Mozilla'));
tdPart.appendChild(document.createTextNode('27,8%'));
trNew.appendChild(thNavi);
trNew.appendChild(tdDevs);
trNew.appendChild(tdPart);
if (output) {
trs = output.getElementsByTagName('tr');
if (trs[2]) { // Le <tr> de Chrome
trs[2].parentNode.insertBefore(trNew, trs[2]);
}
}
Voici une variante, utilisant un tableau pour stocker les éléments, et utilisant innerHTML pour le contenu des cellules :