7
votes

Fenêtre.print ne fonctionne pas dans IE

Je dois imprimer un div code> que je fais de la manière suivante: xxx pré>

mon problème est que sur IE, quand je clique sur le bouton Rien ne se passe. Cependant, sur Chrome et Firefox, cela fonctionne. Que puis-je faire pour l'imprimer correctement? P>

EDIT: strong> Je suis appel Imprimer code> de la manière suivante: P>

$('#print_it').click(function(){
    var element = $('#itinerario');
    PrintElem(element);
});


3 commentaires

DUP possible de ceci: Stackoverflow.com/Questtions / 2555697 / ...


Impossible d'utiliser mywindow.document.innerhtml ?


Où est votre gestionnaire d'événements de clic?


4 Réponses :


8
votes

Vous devez faire un mywindow.document.close () et vous pouvez ne pas avoir de place dans le nom de la fenêtre

Je suppose que vous invoquez l'impressionnant d'invoquer à partir de l'ONCLICK Quelque chose - si quelque chose est un lien, vous devez retourner false dans le gestionnaire ONCLICK!

Voici comment je le ferais si je devais xxx p> Mais je ne suis pas sûr que la fenêtre.Ferme () interférera avec l'impression

et pourquoi pas xxx


2 commentaires

Résolu ... Le problème est que j'ai utilisé var mywindow = window.open ('', 'un nom', 'hauteur = 600, largeur = 800'); au lieu de var mywindow = window.open ('', '_blank', 'hauteur = 600, largeur = 800'); Microsoft n'autorise que quelques arguments comme le nom


Je vous ai déjà dit ça. Aucun espace autorisé. Mon code utilise un trait de soulignement



1
votes

Je vois que vous avez résolu la note de MPLUGJAN sur aucun espace dans le nom de la fenêtre, mais une alternative serait d'utiliser @Media Imprimer CSS Styles, croquement:

<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="utf-8" />
    <title></title>
    <style type="text/css">
        @media print {
            * {
                visibility: hidden;
            }

            .printMe {
                visibility: visible;
            }
        }
    </style>
    <script type="text/javascript" src="jquery-1.4.4.js"></script>
    <script type="text/javascript">
        $(document).ready(function () {
            $("#Button1").click(function () {
                var divToPrint = $("#div3");
                $(divToPrint).addClass("printMe");
                window.print();
                $(divToPrint).removeClass("printMe");
            }
            )
        }
        );
    </script>
</head>
<body>
    <div id="div1">fhgjghajghhjagjdag</div>
    <div id="div2">ytiyrtiyertuyeyiyt</div>
    <div id="div3">We want to print this one.</div>
    <div id="div4">vnbcxbvmzxbvc,xbv</div>
    <div id="buttonContainer">
        <input id="Button1" type="button" value="button" />
    </div>
</body>
</html>


1 commentaires

J'utiliserais l'affichage sur la visibilité depuis que la visibilité prend toujours de la place sur la page



0
votes

Dans mon cas, cette question a été résolue en mettant l'accent sur l'impression.

fenêtre.focus (); fenêtre.print ();


0 commentaires

1
votes

sur mon cas, j'ai juste besoin d'utiliser le code ci-dessous:

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8" />


0 commentaires