Voici ce que j'ai rencontré lors du développement :
1. Supprimez dynamiquement une ligne du tableau.
table : représente un objet table.
k : représente le numéro de ligne
table.rows[k].removeNode(true); //l'exécution de Firefox échoue, c'est-à-dire que l'exécution réussit
Méthode d'écriture compatible IE et FireFox
table.deleteRow(k);
2. Personnalisez les attributs des balises HTML.
inputElement : représente l'élément de formulaire.
propertyName : représente une propriété sous l'élément form
inputElement.propertyName ; //l'exécution de Firefox a échoué, c'est-à-dire que l'exécution a réussi
Méthode d'écriture compatible IE et FireFox
document.getElementById("txtInput").attributes["idvalue"].nodeValue
3. Insérez des éléments HTML à l'emplacement spécifié.
inputElement : représente l'élément de formulaire.
vDiv : Représente l'élément HTML à insérer.
inputElement.insertAdjacentElement("AfterEnd",vDiv);//l'exécution de Firefox a échoué, c'est-à-dire que l'exécution a réussi
Méthode d'écriture compatible IE et FireFox
Dans Firefox, il n'y a pas de définition de cette méthode, donc si vous devez appeler cette méthode, vous devez la redéfinir vous-même.
Copiez le code comme suit :
//Réécrivez la méthode insertAdjacentElement() car il n'existe pas de méthode de ce type dans Firefox
HTMLElement.prototype.insertAdjacentElement=function(where,parsedNode){
changer(où){
cas "avantBegin":
this.parentNode.insertBefore(parsedNode,this);
casser;
cas "afterBegin":
this.insertBefore(parsedNode,this.firstChild);
casser;
cas "beforeEnd":
this.appendChild(parsedNode);
casser;
cas "afterEnd":
si (this.nextSibling)
this.parentNode.insertBefore(parsedNode,this.nextSibling);
autre
this.parentNode.appendChild(parsedNode);
casser;
}
}
4. L'instruction break n'est pas valide.
Lors de l'exécution d'une instruction de boucle for dans IE, break peut être utilisé pour sortir de la boucle actuelle. Mais dans FF, cela devient la sortie de toute la boucle. À ce stade, utilisez plutôt l’instruction continue.
5. Firefox signale que String contient un caractère invalide.
var chkBox=document.createElement('<input type="Checkbox" name="treeBox" value= '+key+''>' //Exécuté avec succès sous IE
Méthode d'écriture compatible IE et FireFox
Firefox ne prend pas en charge cette façon de définir createElement et doit être effectué étape par étape :
Copiez le code comme suit :
var chkBox = document.createElement('input');
chkBox.name = "treeBox";
chkBox.type = "case à cocher" ;
chkBox.value = clé ;
6. Une collection d'objets d'objet de table (ligne de table)
bdList.rows(k).cells(0).innerHTML = "<a>aaa</a>";//l'exécution de Firefox a échoué, c'est-à-dire que l'exécution a réussi
Méthode d'écriture compatible IE et FireFox
Copiez le code comme suit :
bdList.rows[k].cells[0].innerHTML = "<a>aaa</a>";
7. Problèmes avec la méthode getYear() de JS dans Firefox
var aujourd'hui = nouvelle date();
var année = aujourd'hui.getYear();
Dans Firefox, getYear renvoie la valeur de « année en cours - 1900 ».
Quand l'année d'aujourd'hui est inférieure à 2000, c'est la même chose que Firefox. Il est donc préférable d'utiliser getFullYear getUTCFulYear pour appeler
Méthode d'écriture compatible IE et FireFox
Copiez le code comme suit :
var aujourd'hui = nouvelle date();
var année = aujourd'hui.getFullYear();