8
votes

JavaScript: Lorsque vous imprimez une page Web complète, c'est-à-dire que cela ne semble pas imprimer le contenu des iframes sur la page.

Le site Web du client possède des listes de produits. Les prix du produit sont tirés de manière dynamique par un iframe au bas de la page. Il y a JavaScript sur la page qui redimensionne automatiquement cette iframe à la hauteur correcte en fonction de la taille de la taille de la contenue IFrame, une fois qu'elle est chargée.

Le client signale que lors de l'impression de la page, ils ne peuvent rien voir à partir de l'iframe où les prix doivent être - apparemment, il n'imprime pas IE, juste la page principale elle-même.

Je suis sur un Mac et je ne peux donc pas tester dans IE, alors j'ai du mal à expérimenter cela.

Quelqu'un peut-il clarifier le comportement attendu dans cette situation? Est-il possible d'obtenir IE pour imprimer les deux page et inclus iframes par défaut, et si oui, comment allez-moi faire cela? Je ne peux trouver que des exemples d'impression d'un cadre spécifique de une fenêtre mère.

Merci!


6 commentaires

Cela ne répond pas à votre question, mais peut vous permettre de tester avec IE à l'avenir - HABDAS .org / émulation-ie-with-virtualbox


Il peut y avoir des différences dans la manière dont IE gère Iframes Impression, vous feriez mieux de fournir l'URL du site Web ou une source de page HTML (y compris CSS) qui ressemble au problème.


J'ai découvert que quelqu'un d'autre a signalé un problème similaire pour IE ici


Pourquoi ne pas utiliser Ajax pour obtenir les valeurs? Cela semble être une solution de contournement aussi étrange. De plus ... Après avoir défini les valeurs, vous n'avez pas à vous soucier de ne pas imprimer.


Veuillez vérifier les liens qu'il peut aider Stackoverflow.com/questions/44442344/... Stackoverflow.com/Questtions/2518256/...


Vous voudrez peut-être spécifier la version d'Internet Explorer exactement.


5 Réponses :


0
votes

C'était un point intéressant, j'ai donc fait un test en utilisant IE8 (sur un serveur, pas localement).

J'ai imprimé dans IE8 une page Web qui comprenait un iframe de quelque chose que j'ai construit. Et il imprimait une partie du contenu la première fois (les autres contenus ont montré du noir). La deuxième fois que j'ai imprimé, le contenu de l'iframe était tout noir.

Cependant, dans mon exemple, le contenu de l'iframe change constamment (des images et un texte qui s'estompe in et sortant) et le fond CSS derrière celui-ci est noir.

Ce test contient le contenu de l'iframe sur un autre serveur hôte que le contenu de la page principale. Mais à ma connaissance, il existe un fichier de stratégie de domaine croisé fonctionnant ici.

Les problèmes de politique croisée des domaines ont été ma première hypothèse, mais il est tout à fait possible qu'il existe un problème avec la manière dont Internet Explorer rend la capture d'écran lorsqu'elle l'envoie à l'imprimante.


0 commentaires

0
votes

Si vous utilisez JavaScript, alors pourquoi ne pas essayer fenêtre.print () fonction avec Imprimer le support CSS . .


0 commentaires

1
votes

Le comportement attendu devrait être ce que vous rencontrez dans d'autres navigateurs. Si la page est imprimée, l'iframe doit être imprimé avec elle. Il serait difficile d'imaginer que tout le monde a eu le problème et c'est-à-dire que c'est correct dans ce cas.

ci-dessous est un peu spéculation sur ce que le problème pourrait être , mais sans savoir plus / vu de code, il est difficile de connaître les spécificités:

Ce problème pourrait être dû à certains CSS que vous pourriez avoir sur votre page. J'ai lu des problèmes d'impression similaires Iframe où la visibilité a été définie sur caché résultant initialement dans le iframe non impression correctement. Pour contourner ce cas spécifique, l'utilisateur a dû définir la largeur et hauteur à 0px . Sans en savoir plus sur votre site, je ne peux pas prédire correctement que cela se produit.

Un autre problème peut par votre redimensionnement dynamique en fonction du contenu de l'IFrame. Un test simple serait de commenter cette section de sortie et de définir une largeur générique et hauteur sur le iframe pour voir si le problème d'impression survient toujours. Peut-être que ces styles dynamiques ne sont pas reportés à la feuille de style d'impression et ne sont pas appliqués (donc ne figurant pas du tout).

comme une suggestion rapide, consultez Types de supports CSS < / a>:

impression

destiné à un matériau paginé et de documents visionnés à l'écran mode de prévisualisation d'impression. Veuillez consulter la section sur Médias paginé pour informations sur les problèmes de formatage spécifiques aux supports de pagie.

lien utile : spécification d'impression < / a>


0 commentaires


0
votes

Essayez ce plugin, il résoudra votre problème http://project.erikzaadi.com/jqueryplugins/jquery.printelement/


0 commentaires