webForumDet fria alternativet

Skriva ut flera sidor

HTML & CSS

6 svar · 499 visningar · startad av Vinnaren

Medlem sedan sep. 2005833 inlägg
Frågan#1

Hej.

Jag undrar om det finns något script som skriver ut alla sidor, som är förinställda i koden, tex att sida1, sida2, sida3 ska skrivas ut.

Någon som vet hur man gör? :q

Medlem sedan juni 20004 308 inlägg
#2

Det styr du med CSS. För att skapa en sidbrytning använder du:

<div style="page-break-before: always;"></div>

och om något inte skall skrivas ut;

<style type="text/css">
@media print {
	.dontprint { display:none; }
}
</style>
...
<div class="dontprint">Detta syns bara på skärm, ej vid utskrift.</div>

Tråden flyttas till html/css.

Medlem sedan sep. 2005833 inlägg
#3

kanske ska förklara bättre än vad jag gjorde.
Jag har 2 frames. den vänstra som menyn ligger i hade jag tänkt mig en knapp som skriver ut all text ur alla html dokument.
så det är inte bara en sida som ska skrivas ut.

Medlem sedan juni 20004 308 inlägg
#4

Du vill alltså ladda sida 1 i framen till höger, skriva ut den, ladda sida 2, skriva ut den, osv?

Lägg in detta före det första frameset-elementet på frameset-sidan:

<script type="text/javascript">
var doprint=false; var page=0,pages=[];
function printpages(arr){
	pages=arr;
	doprint=true; page=0;
	main.location.href=pages[page];
}
function pageloaded(){
	if(doprint){
		frames['main'].focus();
		frames['main'].print();
		page++;
		if(page==pages.length){ doprint=false; } else { main.location.href=pages[page]; }
	}
}
</script>

(i exemplet heter högerframen "main", byt ut detta så det passar din sida).

För att sedan skriva ut ett antal sidor med en länk i menyn:

<a href="#" onclick="parent.printpages(new Array('sida1.html','sida2.html','sida3.html')); return false;">skriv ut</a>

... och jag tror jag kan förutspå en följdfråga :) Svaret: Nej, jag tror inte du kan komma runt dialogrutorna på ett säkert sätt.

Medlem sedan sep. 2005833 inlägg
#5

jag vill inte ladda några sidor direkt (att de ska visas i framen till höger), utan vill bara skriva ut innehållet i alla dokumen (oavsett vilken av dem som visas i framen till höger), genom att bara trycka på en knapp. §jr

Medlem sedan juni 20004 308 inlägg
#6

Dokumentet/dokumenten måste laddas någonstanns för att kunna skrivas ut. Personligen tycker jag inte att det är en direkt smidig lösning att behöva "godkänna" 5 dialogrutor för att skriva ut 5 dokument, så jag skulle nog tänka om förfarandet helt och hållet. Kanske serverside samla ihop allt relevant data som skall skrivas ut i ett enda dokument och arbeta därifrån. Då känns det helt plötsligt lite mer motiverat med en dialogruta där man kan byta skrivare om man vill.

Medlem sedan sep. 2005833 inlägg
#7

ok, får bli så (y)

263 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
131 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
132 ms — ändringar (db)