Question

Je me demandais s'il y a une alternative à la fonction jquery .html (variable)? Il semble être assez lent et bloque également tout en insérant le code HTML dans le DOM.

J'ai essayé d'utiliser innerHtml, et qui fonctionne très bien, très rapide aussi. Mais pour une raison quelconque, quand j'ai pas jquery ou MS ajax dans le code qui est inséré, ces scripts ne fonctionnent que dans FF.

Je suis en train d'insérer environ 2000 lignes de code.

Était-ce utile?

La solution

Le problème est que le code ajax jquery ou ms (javascript) que vous insérez dans la page n'est pas évaluée. la méthode .html dans jquery fait pour vous, mais si vous voulez utiliser .innerHtml, vous devez évaluer manuellement, en utilisant la fonction eval ():

eval(«javascript code here»);

Ainsi, les étapes sont, insérez le code HTML à l'aide innerHtml, puis évaluer uniquement la partie javascript en utilisant la fonction eval.

Autres conseils

Ce serait génial, si vous spécifiez plus au sujet de votre problème. D'une manière générale, il n'y a pas besoin de faire 2000 .html () mises à jour, vous devez vous inscrire dans de plus grands .html () appelle, car après chaque .html () toute DOM est à reconstruire, ce qui provoque lentement vers le bas.

Je viens juste de lire ce répondre et il y avait un lien dans les commentaires sur l'utilisation de fragments de document DOM à quelle vitesse il est comparé à la méthode « normale » ... vérifier. Il ne fait comparer les points de référence à jQuery, mais ça va vous donner une idée générale.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top