2013-10-04 14 views
20

voglio stampare sulla pagina di ricevuta di caricamento delle pagine in FirefoxL'uso di getPreventDefault() è deprecato. Utilizzare defaultPrevented invece

Firefox mostra seguente errore ..

L'utilizzo di getPreventDefault() è deprecato. Utilizzare invece DefaultPrevented. errore riga di origine:

src.getPreventDefault && src.getPreventDefault()) ? returnTrue : returnFalse; 

NS_ERROR_NOT_AVAILABLE: Componente restituito il codice di errore: 0x80040111 linea (NS_ERROR_NOT_AVAILABLE) [nsIDOMWindow.print] fonte di errore:


print(); 

codice:

$(document).ready(function() { 
    print_doc(); 
    $("#Submit").click(function() { 
     $("#goBack").hide(); 
     $("#printRow").hide(); 
     print(); 
     $("#goBack").show(); 
     $("#printRow").show(); 
    }); 
}); 

function print_doc() { 
    $("#goBack").hide(); 
    $("#printRow").hide(); 
    print(); 
    $("#goBack").show(); 
    $("#printRow").show(); 
} 

voglio stampare la ricevuta prima di mostrare "GoBack", e "printRow" id, ma non funziona

+0

Inoltre, è meglio usare window.print(); - Inoltre, il codice corrente stampa lo schermo due volte – MackieeE

+0

Stai facendo due domande diverse qui. A meno che non intendi cambiare il titolo del tuo post, dovresti accettare la risposta di MackieeE di seguito. – MusikPolice

risposta

4

è possibile creare nuovi CSS con tipo di supporto di stampa

<style media="print"> 
#goBack,#printRow { 
    display:none; 
} 
</style> 

utilizzate questo codice

stampa:

inteso per i documenti stampati (si applica a documenti visualizzati in modalità anteprima di stampa pure).

CSS Media Type

+0

Voglio mostrare questi ID dopo aver stampato # goBack, # printRow ma mostrando che l'uso di getPreventDefault() è deprecato. Utilizzare invece DefaultPrevented. riga origine errore: \t src.getPreventDefault && src.getPreventDefault())? returnTrue: returnFalse; –

9

aggiornare sia le vostre versioni di Firefox versione & jQuery da 1.6.4 a una versione più recente.

Questa è stata presentata come un bug in Firefox in FF11 & Patchato come risultato:

Bug #707677: getPreventDefault(); deprecated

Come dopo tutto, i messaggi di errore si riferiscono a linee di codice sorgente che sono completamente estranei al codice.

+0

"Aggiorna entrambe le tue versioni di Firefox e jQuery dalla versione 1.6.4 ad una versione più recente" è molto utile per intero - = - = - = - = - = - = - = - Anche questo media Css mi ha aiutato @media print { #goBack, #printRow { display: nessuno; } } –

+0

Ma era '#goBack, #printRow {display: none; } 'che l'ha risolto per te? – MackieeE

+18

Ricevo questo da jQuery 1.10.2, attualmente l'ultimo sulla famiglia 1.x. –

4

Ho anche ricevuto questo avviso nell'ultimo FF e jQuery. Non ti preoccupare, verrà risolto a monte prima che causi problemi.

Per quanto riguarda il codice, provate questo:

$(document).ready(function() { 
    $("#Submit").click(function() { 
     var btns = $('#goBack, #printRow'); 
     btns.hide(function() { 
      window.print(); 
      btns.show(); 
     }); 
    }); 
}); 

.nascosto() è asincrona, il che significa che la prossima linea di codice può essere eseguito prima che il browser ha avuto la possibilità di eseguirlo. Quindi potresti stampare prima che gli elementi siano nascosti. Attaccando la stampa all'interno del callback di .hide(), si è certi che è nascosto quando si stampa.

Come un altro poster accennato, però, i tipi di media CSS sono probabilmente un modo migliore per fare questo:

@media print { 
    #goBack, #printRow { 
    display: none; 
    } 
} 
0

ha risolto sostituendo l'ultima versione di js, sito jQuery visita e sostituirlo con l'ultima jquery se richiesto .map js too

Problemi correlati