Chiudi la finestra automaticamente dopo la chiusura della finestra di dialogo di stampa


89

Ho una scheda aperta quando l'utente fa clic su un pulsante. Sullo onloadho far apparire la finestra di dialogo di stampa, ma l'utente mi ha chiesto se fosse possibile che dopo aver inviato alla stampante per la stampa, se la scheda potesse chiudersi da sola. Non sono sicuro che sia possibile farlo. Ho provato a utilizzare setTimeout();, ma non è un periodo di tempo definito poiché l'utente potrebbe distrarsi e dover riaprire la scheda. C'è un modo per farlo?



Risposte:


117

se provi a chiudere la finestra subito dopo la chiamata a print (), potrebbe chiuderla immediatamente e print () non funzionerà. Questo è quello che non dovresti fare :

window.open();
...
window.print();
window.close();

Questa soluzione funzionerà in Firefox, perché alla chiamata print (), attende che la stampa sia terminata, quindi continua a elaborare javascript e chiude () la finestra. IE fallirà con questo perché chiama la funzione close () senza aspettare che la chiamata print () sia fatta. La finestra popup verrà chiusa prima che la stampa sia terminata.

Un modo per risolverlo è utilizzare l'evento "onafterprint" ma non te lo consiglio perché questi eventi funzionano solo in IE.

Il modo migliore è chiudere la finestra popup una volta chiusa la finestra di dialogo di stampa (la stampa è terminata o annullata). In questo momento, la finestra popup sarà focalizzata e potrai utilizzare l'evento "onfocus" per chiudere la finestra popup.

Per fare ciò, inserisci questo codice javascript incorporato nella tua finestra popup:

<script type="text/javascript">
window.print();
window.onfocus=function(){ window.close();}
</script>

Spero che questo hepls ;-)

Aggiornare:

Per i nuovi browser Chrome potrebbe chiudersi troppo presto, vedere qui . Ho implementato questa modifica e funziona per tutti i browser attuali: 2/29/16

        setTimeout(function () { window.print(); }, 500);
        window.onfocus = function () { setTimeout(function () { window.close(); }, 500); }

Per quello che vale, questo sembra fallire in IE8. La finestra si chiude immediatamente prima che venga visualizzata la finestra di dialogo di stampa.
Heath

15
questo non sembra funzionare per chrome a questo punto, poiché chrome gestisce la stampa internamente, la finestra non perderà il focus quando viene caricata la finestra di dialogo di stampa, e quindi non riacquisterà il focus al termine della stampa. Qualche modo per farlo funzionare per Chrome?
jlbriggs

6
A partire da febbraio 2016 questa e NESSUNA delle altre risposte basate su focus () funziona più in Chrome. L'unica soluzione funzionante è quella di @noamtcohen (purtroppo con un conteggio dei voti molto basso).
Jpsy

2
Penso che l'ultima versione di Chrome non mostri la finestra di dialogo di stampa fino a quando le immagini sulla pagina non sono state caricate, ma sta eseguendo la chiusura precedente, quindi la pagina si chiude prima del caricamento (la finestra di dialogo di stampa non viene mai visualizzata). Da correggerewindow.onload = function () { window.print(); setTimeout(window.close, 500); };
Brian Leishman,

5
La soluzione precedente non funziona più, aggiungi il listener di eventi su afterprint per chiudere la finestra window.onafterprint = function () {window.close ()};
Rahat Hameed

91

Questo è quello che mi è venuto in mente, non so perché c'è un piccolo ritardo prima della chiusura.

 window.print();
 setTimeout(window.close, 0);

1
È interessante notare che questa risposta di basso punteggio è attualmente quella corretta. A partire da febbraio 2016 nessuna delle risposte basate su focus () funziona più in Chrome. Questa soluzione funziona in FF, Chrome e Safari su Windows e OS X, IE9 +, Android Chrome e IOS Safari. Abbiamo sperimentato solo le finestre di dialogo di conferma nei vecchi IE. Tutti gli altri si chiudono perfettamente.
Jpsy

6
A partire dal 17 marzo, questo non ha funzionato per me esattamente come in Chrome (56), ma aggiungendo un po 'di tempo al timeout ha funzionato. window.print (); setTimeout (window.close, 500);
jAC

Come accennato da JAC, questo aveva bisogno di più tempo per funzionare. Sul mio, 10 ms non erano sufficienti, ma 100 lo erano. Sembra essere una questione di quanto tempo ci vuole per rendere l'anteprima di stampa. Con il mio impostato su 10 ms, ha stampato solo una versione parzialmente renderizzata della pagina. Con 100 ho ottenuto tutto.
Jacob Ewing

1
Per espandere questo aspetto, ~ sembra ~ che il timeout sia sospeso una volta che la finestra di stampa è stata completamente renderizzata (in Chrome su un macbook comunque), e il resto viene contato dopo la chiusura della finestra.
Jacob Ewing

1
Non hai bisogno dello 0, è l'impostazione predefinita
Brian Leishman,

14

Appena:

window.print();
window.close();

Funziona.


2
Questo non funziona in modo affidabile per me su Chrome. A volte funziona, ma a volte la finestra si chiude immediatamente prima che venga visualizzata la finestra di dialogo di stampa. Posso impedire che ciò accada aumentando il timeout a 5000, ma a volte sono necessari fino a 5 secondi perché la finestra si chiuda dopo la stampa. Non sono esattamente sicuro di cosa sta succedendo qui, ma non sembra probabile che sia robusto su diversi browser.
speedarius

1
Come accennato di seguito, la soluzione cross-browser completa è più complessa.
Eric

1
Non dimenticare: Scripts may close only the windows that were opened by it.avvertimento.
Cas Bloem

La soluzione di cui sopra non funziona più, aggiungi un listener di eventi dopo la stampa per chiudere la finestra. window.onafterprint = function(){ window.close()};
Rahat Hameed

13

Voglio solo scrivere quello che ho fatto e quello che ha funzionato per me (poiché nient'altro che ho provato aveva funzionato).

Ho avuto il problema che IE avrebbe chiuso le finestre prima che si aprisse la finestra di dialogo di stampa.

Dopo un sacco di tentativi ed errori og test, questo è quello che ho avuto modo di lavorare:

var w = window.open();
w.document.write($('#data').html()); //only part of the page to print, using jquery
w.document.close(); //this seems to be the thing doing the trick
w.focus();
w.print();
w.close();

Sembra funzionare in tutti i browser.


sembrava funzionare. non funziona più, inserirò il mio codice di seguito.
Remco

10

Questo codice ha funzionato perfettamente per me:

<body onload="window.print()" onfocus="window.close()">

Quando la pagina si apre, apre automaticamente la finestra di dialogo di stampa e dopo la stampa o l'annullamento chiude la finestra.

Spero che sia d'aiuto,


questa dose non funziona se hai aperto pdf da stampare non html o jsp dove poi posso mettere onload body?
Shareef

9

Sicuramente questo è facilmente risolvibile in questo modo:

      <script type="text/javascript">
         window.print();
         window.onafterprint = window.close();
      </script>

O se vuoi fare qualcosa di simile, ad esempio, vai alla pagina precedente.

    <script type="text/javascript">
        window.print();
        window.onafterprint = back;

        function back() {
            window.history.back();
        }
    </script>

window.close ();
Mustafa

Nota: window.onafterprint = window.close();dovrebbe essere window.onafterprint = window.close;Il primo assegna il risultato di window.close()a onafterprint. Ciò farà sì window.close()che venga eseguito immediatamente quando il gestore è impostato e non verrà eseguito nulla quando onafterprintviene generato l' evento. Quest'ultimo assegna window.closecome gestore di eventi, che è ciò che vogliamo.
Kei

Inoltre, in alcuni browser, l'esecuzione del codice viene sospesa window.print();fino a quando la finestra di dialogo di stampa non viene chiusa. Quando ciò accade, è possibile che l' onafterprintevento venga generato prima onafterprintdell'assegnazione. Quindi, sarebbe meglio window.onafterprint = window.close;venire prima window.print();. Altrimenti, l'approccio utilizzato in questa risposta funziona meglio di quelli basati su onfocus o setTimeout suggeriti dalle altre risposte.
Kei

8

Questa è una soluzione cross-browser già testata su Chrome, Firefox, Opera entro il 2016/05.

Tieni presente che Microsoft Edge ha un bug che non chiude la finestra se la stampa è stata annullata. Link correlato

var url = 'http://...';
var printWindow = window.open(url, '_blank');
printWindow.onload = function() {
    var isIE = /(MSIE|Trident\/|Edge\/)/i.test(navigator.userAgent);
    if (isIE) {

        printWindow.print();
        setTimeout(function () { printWindow.close(); }, 100);

    } else {

        setTimeout(function () {
            printWindow.print();
            var ival = setInterval(function() {
                printWindow.close();
                clearInterval(ival);
            }, 200);
        }, 500);
    }
}

7

Utilizzando Chrome ho provato per un po 'a far funzionare il window.onfocus=function() { window.close(); }e <body ... onfocus="window.close()"> . I miei risultati:

  1. Avevo chiuso il dialogo stampato, non è successo niente.
  2. Ho cambiato finestra / schede nel mio browser, ancora niente.
  3. è tornato alla mia prima finestra / scheda e quindi l'evento window.onfocus è stato attivato chiudendo la finestra.

Ho anche provato <body onload="window.print(); window.close()" >a chiudere la finestra prima ancora che potessi fare clic su qualsiasi cosa nella finestra di dialogo di stampa.

Non ho potuto usare nessuno di quelli. Quindi ho usato un po 'di Jquery per monitorare lo stato del documento e questo codice funziona per me.

<script type="text/javascript">
    var document_focus = false; // var we use to monitor document focused status.
    // Now our event handlers.
    $(document).focus(function() { document_focus = true; });
    $(document).ready(function() { window.print(); });
    setInterval(function() { if (document_focus === true) { window.close(); }  }, 500);
</script>

Assicurati di aver incluso jquery e quindi copia / incolla questo nell'html che stai stampando. Se l'utente ha stampato, salvato come PDF o annullato il lavoro di stampa, la finestra / scheda si autodistruggerà. Nota: l'ho testato solo in Chrome.

modificare

Come ha sottolineato Jypsy nei commenti, lo stato di focus del documento non è necessario. Puoi semplicemente usare la risposta di noamtcohen, ho cambiato il mio codice in quello e funziona.


Questa soluzione causa il blocco della finestra originale se l'utente chiude il popup con la "X" nell'angolo anziché selezionare Annulla o Stampa. Stesso problema della soluzione di Juan, che @JFK ha indicato inizialmente.
Clayton

Il javascript di cui sopra non deve essere inserito nell'html che viene stampato sia che sia aperto in un popup o, come faccio io, in una nuova scheda. Quindi questo javascript non ha alcun effetto sulla finestra originale.
Nado11

5

questo funziona per me:

<script>window.onload= function () { window.print();window.close();   }  </script>

5

Quanto segue ha funzionato per me:

function print_link(link) {
    var mywindow = window.open(link, 'title', 'height=500,width=500');   
    mywindow.onload = function() { mywindow.print(); mywindow.close(); }
}

5

Funziona bene in Chrome 59:

window.print();
window.onmousemove = function() {
  window.close();
}

5

Basta avvolgere window.close dal gestore di eventi onafterprint, ha funzionato per me

printWindow.print();
printWindow.onafterprint = () => printWindow.close();

Richiede Safari v12
Paul Brady

4

Ho provato molte cose che non hanno funzionato. L'unica cosa che ha funzionato per me è stata:

window.print();
window.onafterprint = function () {
    window.close();
}

testato su cromo.


3

La seguente soluzione funziona per le versioni più recenti di IE9, IE8, Chrome e FF a partire dal 10/03/2014. Lo scenario è questo: ti trovi in ​​una finestra (A), dove fai clic su un pulsante / link per avviare il processo di stampa, quindi si apre una nuova finestra (B) con i contenuti da stampare, viene subito visualizzata la finestra di dialogo di stampa, e puoi annullare o stampare, quindi la nuova finestra (B) si chiude automaticamente.

Il codice seguente lo consente. Questo codice javascript deve essere inserito nell'html per la finestra A (non per la finestra B):

/**
 * Opens a new window for the given URL, to print its contents. Then closes the window.
 */
function openPrintWindow(url, name, specs) {
  var printWindow = window.open(url, name, specs);
    var printAndClose = function() {
        if (printWindow.document.readyState == 'complete') {
            clearInterval(sched);
            printWindow.print();
            printWindow.close();
        }
    }
    var sched = setInterval(printAndClose, 200);
};

Il pulsante / collegamento per avviare il processo deve semplicemente richiamare questa funzione, come in:

openPrintWindow('http://www.google.com', 'windowTitle', 'width=820,height=600');

Funziona in Chrome fintanto che l'utente stampa o annulla l'operazione MA se l'utente chiude la finestra (B), la finestra (A) si blocca (ho detto in Chrome?). Prova (in Chrome) jsfiddle.net/qy6QV/2/show e chiudi la finestra. Quindi prova a ricaricarlo ... appeso.
JFK

2
<!doctype html>
<html>
<script>
 window.print();
 </script>
<?php   
date_default_timezone_set('Asia/Kolkata');
include 'db.php'; 
$tot=0; 
$id=$_GET['id'];
    $sqlinv="SELECT * FROM `sellform` WHERE `id`='$id' ";
    $resinv=mysqli_query($conn,$sqlinv);
    $rowinv=mysqli_fetch_array($resinv);
?>
        <table width="100%">
           <tr>
                <td style='text-align:center;font-sie:1px'>Veg/NonVeg</td>  
            </tr>
            <tr>
                <th style='text-align:center;font-sie:4px'><b>HARYALI<b></th>  
            </tr>   
            <tr>
                <td style='text-align:center;font-sie:1px'>Ac/NonAC</td>  
            </tr>
            <tr>
                <td style='text-align:center;font-sie:1px'>B S Yedurappa Marg,Near Junne Belgaon Naka,P B Road,Belgaum - 590003</td>  
            </tr>
        </table>
        <br>    
        <table width="100%">
           <tr>
                <td style='text-align:center;font-sie:1'>-----------------------------------------------</td>  
            </tr>
        </table>

        <table  width="100%" cellspacing='6' cellpadding='0'>

            <tr>
                <th style='text-align:center;font-sie:1px'>ITEM</th>
                <th style='text-align:center;font-sie:1px'>QTY</th>
                <th style='text-align:center;font-sie:1px'>RATE</th>
                <th style='text-align:center;font-sie:1px'>PRICE</th>
                <th style='text-align:center;font-sie:1px' >TOTAL</th>
            </tr>

            <?php
            $sqlitems="SELECT * FROM `sellitems` WHERE `invoice`='$rowinv[0]'";
            $resitems=mysqli_query($conn,$sqlitems);
            while($rowitems=mysqli_fetch_array($resitems)){
            $sqlitems1="SELECT iname FROM `itemmaster` where icode='$rowitems[2]'";
            $resitems1=mysqli_query($conn,$sqlitems1);
            $rowitems1=mysqli_fetch_array($resitems1);
            echo "<tr>
                <td style='text-align:center;font-sie:3px'  >$rowitems1[0]</td>
                <td style='text-align:center;font-sie:3px' >$rowitems[5]</td>
                <td style='text-align:center;font-sie:3px' >".number_format($rowitems[4],2)."</td>
                <td style='text-align:center;font-sie:3px' >".number_format($rowitems[6],2)."</td>
                <td style='text-align:center;font-sie:3px' >".number_format($rowitems[7],2)."</td>
              </tr>";
                $tot=$tot+$rowitems[7];
            }

            echo "<tr>
                <th style='text-align:right;font-sie:1px' colspan='4'>GRAND TOTAL</th>
                <th style='text-align:center;font-sie:1px' >".number_format($tot,2)."</th>
                </tr>";
            ?>
        </table>
     <table width="100%">
           <tr>
                <td style='text-align:center;font-sie:1px'>-----------------------------------------------</td>  
            </tr>
        </table>
        <br>
        <table width="100%">
            <tr>
                <th style='text-align:center;font-sie:1px'>Thank you Visit Again</th>  
            </tr>
        </table>
<script>
window.close();
</script>
</html>

Stampa e chiudi la finestra di una nuova scheda con php e javascript con un solo clic


2

jquery:

$(document).ready(function(){ 
  window.print();
  setTimeout(function(){ 
             window.close();
  }, 3000);
});

1

Questo ha funzionato meglio per me iniettando l'HTML nel popup come quanto <body onload="window.print()"... sopra funziona per IE, Chrome e FF (su Mac) ma non FF su Windows.

https://stackoverflow.com/a/11782214/1322092

var html = '<html><head><title></title>'+
               '<link rel="stylesheet" href="css/mycss.css" type="text/css" />'+
               '</head><body onload="window.focus(); window.print(); window.close()">'+
               data+
               '</body></html>';

1

Ecco cosa faccio ...

Abilita la stampa della finestra e si chiude in base a un parametro di query.

Richiede jQuery. Può essere eseguito in _Layout o nella pagina master per lavorare con tutte le pagine.

L'idea è di passare un parametro nell'URL che dice alla pagina di stampare e chiudere, se il parametro è impostato, l'evento jQuery "ready" stampa la finestra, e quindi quando la pagina è completamente caricata (dopo la stampa) "onload" si chiama che chiude la finestra. Tutti questi passaggi apparentemente extra consistono nell'attendere che la finestra venga stampata prima di chiudersi.

Nel corpo html aggiungi e onload l'evento che chiama printAndCloseOnLoad (). In questo esempio stiamo usando cshtm, potresti anche usare javascript per ottenere param.

<body onload="sccPrintAndCloseOnLoad('@Request.QueryString["PrintAndClose"]');">

Nel javascript aggiungi la funzione.

function printAndCloseOnLoad(printAndClose) {
    if (printAndClose) {
        // close self without prompting
        window.open('', '_self', ''); window.close();
    }
}

E evento pronto per jQuery.

$(document).ready(function () {
    if (window.location.search.indexOf("PrintAndClose=") > 0)
        print();
});

Ora, quando si apre un URL, è sufficiente aggiungere il parametro della stringa di query "PrintAndClose = true" e verrà stampato e chiuso.


1

Per me, la mia soluzione finale è stata un mix di diverse risposte:

    var newWindow = window.open();
    newWindow.document.open();
    newWindow.document.write('<html><link rel="stylesheet" href="css/normalize-3.0.2.css" type="text/css" />'
            + '<link rel="stylesheet" href="css/default.css" type="text/css" />'
            + '<link rel="stylesheet" media="print" href="css/print.css" type="text/css" />');

    newWindow.document.write('<body onload="window.print();" onfocus="window.setTimeout(function() { window.close(); }, 100);">');
    newWindow.document.write(document.getElementById(<ID>).innerHTML);
    newWindow.document.write('</body></html>');
    newWindow.document.close();
    newWindow.focus();

1

Questo è ciò che ha funzionato per me (2018/02). Avevo bisogno di una richiesta separata perché la mia stampa non è ancora visualizzata sullo schermo. Sulla base di alcune delle eccellenti risposte sopra, per le quali vi ringrazio tutti, ho notato:

  • w.onloadnon deve essere impostato prima w.document.write(data).
    Sembra strano perché vorresti impostare il gancio in anticipo. La mia ipotesi: il gancio è già acceso quando si apre la finestra senza contenuto. Poiché è stato attivato, non si attiverà più. Ma, quando è ancora in corso un'elaborazione con una nuova, document.write()l'hook verrà chiamato al termine dell'elaborazione.
  • w.document.close()ancora è richiesto. Altrimenti non succede niente.

L'ho testato in Chrome 64.0, IE11 (11.248), Edge 41.16299 (edgeHTML 16.16299), FF 58.0.1. Si lamenteranno dei popup, ma viene stampato.

function on_request_print() {
  $.get('/some/page.html')
    .done(function(data) {
      console.log('data ready ' + data.length);
      var w = window.open();
      w.document.write(data);
      w.onload = function() {
        console.log('on.load fired')
        w.focus();
        w.print();
        w.close();
      }
      console.log('written data')
      //this seems to be the thing doing the trick
      w.document.close();
      console.log('document closed')
    })
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js">
</script>
<a onclick="on_request_print();">Print rapportage</a>

1
const printHtml = async (html) => {
    const printable = window.open('', '_blank', 'fullscreen=no');
    printable.document.open();
    printable.document.write(`<html><body onload="window.print()">${html}</body></html>`);
    await printable.print();
    printable.close();
};

Ecco la mia soluzione ES2016.


1
Ciao Stuart e benvenuto in Stack Overflow! Puoi spiegare perché questo codice funziona per aiutare maggiormente l'OP e gli altri utenti? Grazie!
heather

1

Questo funziona perfettamente per me @holger, tuttavia, l'ho modificato e mi si adatta meglio, la finestra ora si apre e si chiude immediatamente premendo il pulsante Stampa o Annulla.

function printcontent()
{ 
var disp_setting="toolbar=yes,location=no,directories=yes,menubar=yes,"; 
disp_setting+="scrollbars=yes,width=300, height=350, left=50, top=25"; 
var content_vlue = document.getElementById("content").innerHTML; 
var w = window.open("","", disp_setting);
w.document.write(content_vlue); //only part of the page to print, using jquery
w.document.close(); //this seems to be the thing doing the trick
w.focus();
w.print();
w.close();
}"

1

Questo ha funzionato per me 11/2020 <body onafterprint="window.close()">... semplice.


0

IE aveva (ha?) Gli eventi onbeforeprinte onafterprint: potevi aspettare, ma avrebbe funzionato solo su IE (il che potrebbe essere ok o meno).

In alternativa, puoi provare ad attendere che il focus ritorni alla finestra dalla finestra di dialogo di stampa e chiuderla. Amazon Web Services lo fa nelle finestre di dialogo di stampa delle fatture: premi il pulsante di stampa, si apre la visualizzazione stampabile e si apre immediatamente la finestra di dialogo della stampante. Se premi stampa o annulli la finestra di dialogo di stampa si chiude e quindi la visualizzazione stampabile si chiude immediatamente.


0

È difficile far funzionare cose come questa su tutti i browser.

Inizialmente stavo cercando di fare lo stesso genere di cose: aprire una nuova pagina con stile per la stampa, stamparla usando JS, quindi chiuderla di nuovo. Questo è stato un incubo.

Alla fine, ho scelto di fare semplicemente clic sulla pagina stampabile e quindi utilizzare il JS di seguito per avviare una stampa, quindi reindirizzarmi a dove volevo andare quando ho finito (con una variabile impostata in PHP in questo caso).

L'ho testato su Chrome e Firefox su OSX e Windows, e IE11-8, e funziona su tutti (anche se IE8 si bloccherà per un po 'se non hai effettivamente una stampante installata).

Buona caccia (stampa).

<script type="text/javascript">

   window.print(); //this triggers the print

   setTimeout("closePrintView()", 3000); //delay required for IE to realise what's going on

   window.onafterprint = closePrintView(); //this is the thing that makes it work i

   function closePrintView() { //this function simply runs something you want it to do

      document.location.href = "'.$referralurl.'"; //in this instance, I'm doing a re-direct

   }

</script>

0

basta usare questo script java

 function PrintDiv() {
    var divContents = document.getElementById("ReportDiv").innerHTML;
    var printWindow = window.open('', '', 'height=200,width=400');
    printWindow.document.write('</head><body >');
    printWindow.document.write(divContents);
    printWindow.document.write('</body></html>');
    printWindow.document.close();
    printWindow.print();
    printWindow.close();
}

chiuderà la finestra dopo aver fatto clic sul pulsante di invio o di annullamento


0

Su IE11 l'evento onfocus viene chiamato due volte, quindi all'utente viene chiesto due volte di chiudere la finestra. Ciò può essere evitato con una leggera modifica:

<script type="text/javascript">
  var isClosed = false;
  window.print();
  window.onfocus = function() {
    if(isClosed) { // Work around IE11 calling window.close twice
      return;
    }
    window.close();
    isClosed = true;
  }
</script>

0

Questo ha funzionato per me in FF 36, Chrome 41 e IE 11. Anche se annulli la stampa e anche se hai chiuso la finestra di dialogo di stampa con la "X" in alto a destra.

var newWindow=window.open(); 
newWindow.document.open();
newWindow.document.write('<HTML><BODY>Hi!</BODY></HTML>'); //add your content
newWindow.document.close();
newWindow.print();      

newWindow.onload = function(e){ newWindow.close(); }; //works in IE & FF but not chrome 

//adding script to new document below makes it work in chrome 
//but alone it sometimes failed in FF
//using both methods together works in all 3 browsers
var script   = newWindow.document.createElement("script");
script.type  = "text/javascript";
script.text  = "window.close();";
newWindow.document.body.appendChild(script);

0
setTimeout(function () { window.print(); }, 500);
        window.onfocus = function () { setTimeout(function () { window.close(); }, 500); }

Funziona perfettamente per me. Spero che sia d'aiuto


0

Questo funziona per me su Chrome (non ho provato su altri)

$(function(){
    window.print();
    $("body").hover(function(){
        window.close();
    });
});
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.