google chrome aperçu avant impression ne charge pas la page la première fois
J'essaie d'imprimer une page à l'aide de ce code
<html>
<head>
<script type="text/javascript">
function Popup()
{
var mywindow = window.open('', 'Ticket info', 'height=400,width=600');
mywindow.document.write('<html><head><title>my div</title>');
mywindow.document.write('<style type="text/css"> *{margin: 0; padding: 0;} body{padding: 3px; padding-left:20px;font:6px bold Arial;}</style>');
mywindow.document.write('<script src="http://code.jquery.com/jquery-latest.min.js"><'+'/script>');
mywindow.document.write('<script src="jquery-barcode.min.js"><'+'/script>');
mywindow.document.write('</head><body>');
mywindow.document.write('<div id="demo"></div>');
mywindow.document.write('<script type="text/javascript">$("#demo").barcode("1234567890128", "code39");<'+'/script>');
mywindow.document.write('</body></html>');
mywindow.print();
return true;
}
</script>
</head>
<body>
<input type="button" value="Print Div" onclick="Popup();" />
</body>
</html>
Fondamentalement, il apparaîtra une fenêtre pour afficher un aperçu avant impression de la page. la première tentative de chargement de l'aperçu avant impression ne prendra pas en charge les codes-barres et lorsque vous annulez l'impression de la première page de prévisualisation, puis cliquez-droit sur la page et imprimez à nouveau la 2ème aperçu avant impression affiche maintenant le code à barres d'impression.
Je pense que le problème vient de cette ligne:
mywindow.document.write('<script type="text/javascript">$("#demo").barcode("1234567890128", "code39");<'+'/script>');
quand je commenter cette ligne et ajouter un mannequin de texte à la page. Il s'afficheront automatiquement dans l'aperçu avant impression lors de la première tentative.
J'ai eu le même problème avant, quand j'essaie de charger le style à partir d'un fichier css. - Je résoudre ce problème en transférant les styles directement à la fenêtre pop-up.
Ma question est pourquoi est-ce arrivé? et comment puis-je charger le code à barres sur la première tentative de l'aperçu avant impression?
OriginalL'auteur Romeo | 2015-02-05
Vous devez vous connecter pour publier un commentaire.
Vous avez besoin de mettre de délai avant l'impression.
Il est originaire défaut dans google chrome.
Code :-
Merci @HaiderAliWajihi pour votre appréciation. Vous pouvez aimer ma réponse alors que d'autres peuvent également trouver cette solution
OriginalL'auteur Anand Deep Singh
Cela a fonctionné pour moi (ainsi que la mise en œuvre de Anand observé IE 10+):
Au lieu d'attendre que la fenêtre de chargement et de tenter de les imprimer prématurément, c'est juste attend pour l'ensemble de la
document.body
à charger.OriginalL'auteur sutt0n
J'ai déplacé la fenêtre.print() de commande sur la fenêtre pop-up de soi de sorte qu'il peut charger la fonction jquery avant d'imprimer.
C'est la ligne que j'ai ajouté.
C'est l'ensemble du code:
OriginalL'auteur Romeo
en fait, vous pouvez créer une extension de css et de placer toutes vos css...
Par défaut
Puis il suffit de le remplacer comme cela
juste ajouter media= "print" à la reconnaître..
Espère que ça va aider...
OriginalL'auteur Nelson Estuesta Jr