Mai întâi trebuie să selectați Div dorit pentru a scrie variabilei conținutul său (la urma urmei, vom imprima conținutul):
Codul: var html_to_print = $ ('div # to_print'). Html ()
Acum, să ne gândim cum este posibil în principiu să imprimați ceva pe JS? Cea mai simplă soluție este să utilizați funcția de imprimare. Dar această funcție este numai pentru obiectul ferestrei. așa că trebuie să creați acest element în fundal și să apelați funcția de imprimare.
Deci, creați o iframe (va fi recipientul ferestrei noastre noi):
Cod: var iframe = $ ('„); // creați o iframe într-o variabilă
$ ('body'); adăugați (iframe); // adăugați această variabilă din iframe către corpul nostru (la sfârșitul final)
Acum obținem documentele și ferestrele din iFrame nou creat:
Cod: var doc = $ ('# print_frame') # 91; 0 # 93; .contentDocument || $ ('# print_frame') # 91; 0 # 93; .contentWindow.document;
var câștig = $ ('# print_frame') # 91; 0 # 93; .contentWindow || $ ('# print_frame') # 91; 0 # 93 ;;
Document Object (în doc variabilă), trebuie să-l aducă în datele de imprimare, iar fereastra (win variabilă) - să se numească sigiliul.
Acum, să afișăm datele de tipărire în iframe (de asemenea, puteți adăuga un stil special pentru imprimare).
Și tipăriți:
Dialogul de tipărire este deschis, în timp ce tipărim numai conținutul unui div anume și nu afișăm pop-up-uri inutile utilizatorului.
Decorăm rezultatele
Să eliminați iFrame creat, nu pentru a crește greutatea paginilor în memoria RAM (și dintr-o dată persoana care apasă din nou butonul „Print“):
2) Adăugați la conținutul tipărit și o foaie de stil CSS:
Mai întâi, specificăm stilurile din variabila (sau puteți specifica direct legătura cu un fișier CSS extern):
Cod: var print_css = '„;
Fiți atenți la cip cu media = print. Aceasta înseamnă că stilurile sunt executate numai pe imprimantă (aceasta este mai mult o caracteristică, în cazul nostru, decât un adevărat plus).
Următorul cod: fiecare eveniment va fi gri. Puteți specifica mai multe stiluri sau un fișier extern CSS.
Și adăugați această variabilă la datele pe care le punem în iframe tipărit. Pentru aceasta, modificați puțin valoarea în variabila html_to_print descrisă mai sus:
Codul: var html_to_print = print_css + $ ('# to_print'). Html ();
Desigur, implementarea dvs. poate fi diferită, sper că ideea implementării a fost transferată.