9
votes

Impossible de terminer l'opération en raison de l'erreur 800A025E

Qu'est-ce que cette erreur signifie dans IE10 / 11:

this.nativeSelection.removeAllRanges();


7 commentaires

Stackoverflow.com/questions/3169786/...


Un exemple aiderait.


Je reçois aussi exactement la même erreur lors de l'appelant removeallranges () dans IE9, sporadiquement cependant. @Timdown Je pense utiliser votre bibliothèque de Rangy pour voir si l'erreur disparaît ... mais je pense d'abord que je vais essayer Stackoverflow .COM / A / 3171348/227299


Pouvez-vous fournir un JSFIDDLE ?


@Dom j'ai ajouté un exemple de lien


Stackoverflow.com/questions/22914075/... < / a>


@Timdown j'ai ajouté un exemple.


3 Réponses :



0
votes

J'ai reçu cette erreur lorsque vous essayez de fenêtre.getselection (). RemoveAllranges (); code> et il n'y avait pas de sélection. Une solution de contournement est de vérifier s'il y a une sélection d'abord:

if (window.getSelection().getRangeAt(0).getClientRects().length > 0) {
    window.getSelection().removeAllRanges();
}


1 commentaires

Vous devez appeler getClientRects , la fonction elle-même n'aura jamais une certaine longueur.



4
votes

J'ai eu cette erreur à venir récemment, je l'ai réparée avec la vérification suivante:

var sel = window.document.getSelection();
if (sel.rangeCount > 0 && sel.getRangeAt(0).getClientRects().length > 0) {
    sel.removeAllRanges();
}


3 commentaires

J'ai eu le même problème à l'aide de l'éditeur HTML Trumbowyg. Corrigé avec cette solution. Merci


Cela a commencé à me donner un autre problème dans Chrome: " La sélection discontinue n'est pas prise en charge ." où j'utilise: selection.addrange (plage)


Je suggérerais d'utiliser en outre window.getselection (). Rangecount (pour chrome, mais peut-être aussi dans d'autres environnements).