Comment puis-je ajouter un indicateur de chargement de ma page alors que mon iframe charges?
Je suis en train de créer une page en cliquant sur un lien d'une iframe est inséré dans un div et c'est le contenu chargé. Je ne ce à l'aide de la suite de jQuery appel:
$('#mydiv').html('<iframe src="sourcelink.html" frameborder="0" width="760" height="2400" scrolling="no"></iframe>');
Parfois le contenu de la source charges très lentement et, par conséquent, il semble que rien ne se passe. Je voudrais avoir une simple animation de chargement pendant le chargement du contenu, tandis que le contenu de l'iframe charges. Lorsque l'iframe ait fini de charger son contenu devrait pop et l'animation de chargement devraient disparaître.
J'ai envisagé un couple de façons que je pouvais le faire (par exemple, ayant un chargeur div simplement permuter les deux dans et hors) mais je ne suis pas sûr de ce que la meilleure approche pour résoudre ce problème. Peut-être que je ne devrais pas l'utiliser .html()? Je suis ouvert à la suggestion, si il n'y a plus de bonne solution.
- qu'est-ce que dans "sourcelink.html"? Est-ce une pleine page HTML? Je me demandais simplement si il a besoin d'être dans une iframe à tous
Vous devez vous connecter pour publier un commentaire.
Est-il une raison vous ne pouvez pas écouter la
onload
cas de l'iframe lui-même? Il doit se déclencher après l'enfant de contenu chargé.Quelque chose comme ceci:
Vous avez besoin de définir une méthode qui permet à votre iframe pour mettre en évidence qu'il a fini de charger, par exemple:
Page principale:
sourcelink.html:
Si l'iframe est obtenue à partir du même domaine que la page parent de domaine, il peut faire appel à des méthodes définies dans la page parent par le biais de la
window.parent
propriété.Simplement donner de l'élément conteneur (ce cas #myDiv) un arrière-plan d'une throbber et le contenu de l'iframe se chevauchent cette quand c'est fait, le chargement.
C'est le plus simple.
Donc Dans mon cas de faire ce qui suit n'a pour moi..
Le code HTML
et j'ai été chargement de l'iFrame sur le bouton du clic, voici donc le JS