J'ai lu plusieurs postes sur ce problème, mais je ne peux pas le résoudre. P>
Je charge un fichier HTML dans une DIV. Le fichier que je charge contient une liste non ordonnée. Cette liste doit être étendue (un menu avec des articles sous-menu) et fermé. Par conséquent, j'ai besoin de JS. Mais malheureusement, ce script n'est pas chargé. P>
Quelqu'un peut-il m'aider? P>
serait si génial! Merci beaucoup :) p>
8 Réponses :
Vous devez appeler explicitement ahover sur la liste non ordonnée. Voir le DocumentationAn . P>
permet de vous assurer que vous disposez de JQuery chargé en premier lieu, assurez-vous que le lien vers la bibliothèque est dans la tête de votre HTML, alors quelque chose comme ceci:
.getScript()
Merci! Où et comment dois-je utiliser cela? N'y a-t-il aucune autre possibilité?
Eh bien, j'ai du mal à comprendre ce que vous voulez faire, savez-vous bien sûr si JQuery est chargé sur votre page en premier lieu?
Oui, ma page fonctionne jusqu'à présent. JQuery doit travailler à cause de la demande LOD (). La seule chose est la JS dans le contenu chargé. Je ne sais pas comment résoudre ça ... :(
ok merci jpsilvashy je vais le tester et bien être de retour dans une minute :)
ahh, je vois ... Si vous voulez simplement charger une utilisation HTML:
$("selector for div ").load("/path_to_html.html div#main");
Cela fonctionne, le menu que vous voyez est le contenu chargé. Ce menu doit être plié ensemble (le JS le fait). et ce script n'est pas chargé. c'est le problème :)
Juste pour indiquer clairement comment ça devrait ressembler. Ouvrez JOHNLIKESIT.JO.OHOST.DE/HELPME/HTMLContent.html I ' VE inclus les fichiers JS dans le deuxième fichier pour vous montrer ce que je veux dire :)
Même lorsque les fichiers JS sont inclus dans les deux (le premier fichier et le fichier HTML à charger dans la première, cela ne fonctionne pas :(
Donc, vous ne devriez donc pas avoir besoin de JavaScript dans le fichier en cours de chargement, nous ne modifions que le DOM, donc ce qui est inséré sera toujours sous l'influence de la JS que vous rencontrez sous votre fichier d'origine, y compris tous vos événements et tout . Je ne sais pas ce que vous essayez finalement d'accomplir, est-ce que vous pouvez essayer de l'expliquer différemment?
D'accord, je vais essayer de :) la partie qui doit être insérée contient un menu pouvant être étendu. Sans JavaScript, cela ne pouvait pas être fait (autant que je sache). Donc, je charge le contenu HTML du fichier "htmlcontent.html" dans le fichier div "conteneur" dans mon "index_helpme.html" cela fonctionne jusqu'à présent. Le seul problème est d'interagir avec le HTMLContent.html chargé. Si je veux changer le style CSS avec jQuery ou faire des effets, cela ne fonctionne pas. J'espère que cette explication est claire pour comprendre :) Merci pour votre aide!
Il y a probablement une meilleure façon de créer une page d'accueil au lieu de charger le contenu via JQuery. je ne sais pas. Si vous avez des conseils, laissez-moi savoir :)
Juhu. J'ai résolu ça. Je ne sais pas que c'est la voie la plus élégante, mais cela fonctionne :)
jpsilvashy votre gelotte (); l'a fait :) J'ai inclus ces deux lignes de mon contenu qui devraient être chargés: p> qui fonctionne. p> pour tous ceux qui ont le même problème, il y a un petit indice. Vous devez supprimer les étiquettes du corps et de la tête. S'ils sont inclus, cela ne fonctionne pas. P> Mais maintenant il y a encore une question: pourquoi dois-je inclure cela dans le contenu chargé?
Je pense que le JavaScript doit être chargé après le chargement du contenu dans le DOM. P> mais que seulement une hypothèse! P> Merci pour votre grande aide! P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> P> >
Est-ce que personne ne connaît une explication?
Vous voulez charger via AJAX dans une DIV sur votre page, appelons-le;
1) 2) Le produit pour remplir alors faites-le simplement; p> mais attendez !! Vous ne voulez pas avoir à charger tout à partir de xyz.html, vous voulez simplement charger une partie de xyz.html dire alors faites cela; p> mais attendez !! Disons à l'intérieur de vous penseriez à ce que ce soit; p> bien ce qui suce ci-dessus parce que a) u besoin de créer un fichier JS externe et b) Vous faites réellement 2 appels HTTP, lorsque vous pouvez le faire avec 1 appel http si vous l'avez fait par voie normale non Ajax. P> La meilleure solution consiste à obtenir 2 choses avec 1 appelez le ( HTML et la ligne JS - 1, 1 http) Voici comment vous le faites; p> ceci charge le Le truc ici est des virgules. Vous pouvez choisir de charger les domaines que vous voulez p> p>
Sauf - maintenant que vous avez chargé ce script, comment vous le gérer? Cette solution fonctionne mieux. Utilisation d'une fonction de rappel après le chargement du conteneur DIV ou de contenu spécifique. Le script ne peut pas utiliser le document.Ready, le document déjà prêt. Il suffit de mettre le script entre les étiquettes de script. faux: p> correct: p> Vous pouvez charger de manière dynamique du fichier JavaScript avec l'aide de
loadsffhere code> provient de xyz.html p>
#loadmesonly code> div et tout
Script code> Tags P>
votes
$('#CONTAINER').load('URL_TO_LOAD HTML_ELEMENT_TO_PLUCK_FROM_PAGE_AND_INSERT_INTO_CONTAINER', function () {
$.getScript('PATH_TO_SCRIPT_THAT_YOU_REQUIRE_FOR_LOADED_CONTENT');
});
votes
votes
jquery.getscript code> et définir une fonction de rappel. Lorsque le script a été chargé, la fonction de rappel appelée. Voici un exemple de chargement Highlightjs em> bibliothèque de CDNJS em>:
Montrez-nous du code ...
Meilleure réponse de ce message: Stackoverflow.com/a/16352425/484358