De la fenêtre.getComputedStyle ne pas mettre en œuvre d'éléments de l'interface d'erreur dans Firefox
J'aimerais ajouter des données à l'élément HTML, j'ai donc utilisé le code suivant:
$("#bookListDiv").append(data.HTMLString);
et tout ce qui a de travail, mais ensuite, je voudrais ajouter un fadein animation lors de l'affichage de cet élément, j'ai donc modifié afin de:
$(data.HTMLString).hide().appendTo("#bookListDiv").fadeIn(1000);
Animation fonctionne sur Chrome, mais sur Firefox, je vois l'erreur suivante dans la console:
TypeError: Argument 1 de la Fenêtre.getComputedStyle ne pas mettre en œuvre d'éléments de l'interface.
J'utilise jquery 1.8.2.
Pourriez-vous me conseiller quel est le problème? - Je censé quelque chose avec les données, mais dans la première approche, tout fonctionne correctement.
Essayez
La clé de bits de données semblent être dans la valeur de
Je crois que je connais le problème, mais ne veux pas m'asseoir ici et de le deviner. Lorsque vous posez une question, de fournir toutes les informations pertinentes nécessaires pour reproduire le problème.
cookie monster, veuillez ne pas le spam si vous ne connaissez pas la réponse.
getComputedStyle(document.createElement('div'))
dans la console, quel est le résultat? La version de Firefox est-il utilisé?La clé de bits de données semblent être dans la valeur de
data.HTMLString
.Je crois que je connais le problème, mais ne veux pas m'asseoir ici et de le deviner. Lorsque vous posez une question, de fournir toutes les informations pertinentes nécessaires pour reproduire le problème.
cookie monster, veuillez ne pas le spam si vous ne connaissez pas la réponse.
OriginalL'auteur Steve Macculan | 2014-04-03
Vous devez vous connecter pour publier un commentaire.
Vous pourrez également obtenir de cette façon si vous appelez
getComputedStyle
sur<html>
. Il doit être de bon sens, mais j'avais une fonction récursive qui bouillonnait en place à partir des éléments internes avec cette fonction et qui donne l'erreur quand il a fini à la racine du document.OriginalL'auteur Chad Hedgcock
J'ai trouvé la solution en ajoutant le délai avant fadeIn fonction.
Code après modifications:
Comme je l'ai remarqué le nombre de retard doit être adapté à la taille des données, dans mon cas, pour 7KB de données json, il est au travail, mais j'ai commencé à partir de 1000.
OriginalL'auteur Steve Macculan
Ce problème a été wontfixed en jQuery: http://bugs.jquery.com/ticket/12462.
La solution de contournement consiste à envelopper votre code HTML dans un seul élément avant de la donner à jQuery.
OriginalL'auteur Gavin Wahl
Essayer de s'assurer que vous êtes en utilisant un balisage correct syntaxe.
Je suis en utilisant AngularJS pour modifier dynamiquement le bouton désactivé l'état et en même temps à se cacher/montrer sur un bouton... ainsi, Firefox freakout avec la "Fenêtre.getComputedStyle n'implémente pas l'interface de l'Élément" erreur (mais Safari/Chrome/IE).
Dans mon cas, le vrai problème est que le balisage à mon travail, n'ont pas de contrepartie de l'ouverture/fermeture tags:
<button ng-disabled="!x">Click</div>
Une fois corrigé:
<button ng-disabled="!x">Click</button>
les choses étaient très bien.Étrangement, les deux réponses précédentes étaient que des solutions partielles: l'enveloppant d'un $timeout autour de ma cacher/montrer que la première-posté réponse suggéré travaillé (mais le retard dû à une quantité substantielle) et de l'habillage de l'élément dans un élément supplémentaire a travaillé mais n'a pas été la mise en œuvre dont j'avais besoin (et créé d'autres problèmes).
J'ai essayé, mais ne peut tout simplement pas obtenir un exemple de code de travail pour reproduire ce problème.
OriginalL'auteur brandonjp