Ich möchte die Belegseite auf der Ladeseite in Firefox drucken
Firefox zeigt folgenden Fehler ..
Die Verwendung von getPreventDefault()
ist veraltet. Verwenden Sie stattdessen defaultPrevented . Fehlerquellenzeile:
src.getPreventDefault && src.getPreventDefault() ) ? returnTrue : returnFalse;
NS_ERROR_NOT_AVAILABLE: Komponente hat Fehlercode zurückgegeben: 0x80040111 (NS_ERROR_NOT_AVAILABLE) [nsIDOMWindow.print] Fehlerquellenzeile:
print();
code:
$(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();
}
Ich möchte meine Quittung drucken, bevor "goBack" und die "printRow" -ID angezeigt werden, aber sie funktionieren nicht
sie können mit media type print neue CSS erstellen.
<style media="print">
#goBack,#printRow {
display:none;
}
</style>
verwendet diesen Code
drucken :
Für gedruckte Dokumente gedacht (gilt auch für Dokumente, die im Druckvorschau-Modus angezeigt werden).
Aktualisieren Sie beide Versionen von Firefox & jQuery von Version 1.6.4
auf eine neuere Version.
Dies wurde als Fehler in Firefox in FF11 gemeldet und als Ergebnis gepatcht:
Fehler # 707677: getPreventDefault (); veraltet
Immerhin beziehen sich die Fehlermeldungen auf Quellcodezeilen, die in keinem Zusammenhang mit Ihrem Code stehen.
Ich bekomme diese Warnung auch in der neuesten Version von FF und jQuery. Machen Sie sich keine Sorgen, es wird Upstream behoben, bevor es Probleme verursacht.
Versuchen Sie Folgendes für Ihren Code:
$(document).ready(function() {
$("#Submit").click(function() {
var btns = $('#goBack, #printRow');
btns.hide(function () {
window.print();
btns.show();
});
});
});
.hide () ist asynchron, was bedeutet, dass die nächste Codezeile möglicherweise ausgeführt wird, bevor der Browser die Möglichkeit hatte, sie auszuführen. Sie können also drucken, bevor die Elemente ausgeblendet sind. Wenn Sie den Druck in den Rückruf von .hide () stecken, sind Sie sicher, dass er beim Drucken verborgen ist.
Wie bereits in einem anderen Poster erwähnt, sind CSS-Medientypen wahrscheinlich der bessere Weg, dies zu tun:
@media print {
#goBack, #printRow {
display: none;
}
}
es wurde behoben, indem die neueste Version von Js ersetzt wurde. Besuchen Sie die Jquery-Website, und ersetzen Sie bei Bedarf auch die JQuery-Version .map js