Impression d une autre page a partir d un lien

Soyez le premier à donner votre avis sur cette source.

Snippet vu 24 322 fois - Téléchargée 29 fois

Contenu du snippet

Bonjour, alors vu que j ai pas trouve la solution sur le site, j ai cherche dans des sites anglophones.
Et j ai trouve la solution pour imprimer autre page que celle présente à l'écran, et cela sans avoir a l afficher au prealable.
Voila c est tt simple pourtant..

Source / Exemple :


Il faut mettre une iframe dans la page (ou se trouve le lien)

<iframe height="0px" src="autrepage.htm" style="visibility: hidden"></iframe>

Et mon lien : 
<a href="javascript:impression()">Imprimer</a>

Aussi dans head:
<link rel="alternate" media="print" href="autrepage.htm"> 

Avec la fonction :
function impression() {
    window.frames[0].print();
  }

Voila c est tout, ca marche aussi bien sur IE que FF.
(Et si on desire lancer l'impression a l ouverture de la page il suffit de mettre dans le body de la 2eme page a imprimer:
 <body onload="window.print()"> 
)

Conclusion :


Bon pour la source du code , je l ai eue dans ce site
http://www.webxpertz.net/forums/showthread.php?threadid=2849

A voir également

Ajouter un commentaire

Commentaires

cs_bibo06
Messages postés
116
Date d'inscription
mardi 28 novembre 2006
Statut
Membre
Dernière intervention
10 mars 2009
-
Bonjour je fais un up sur ce sujet car il m'est interressant.
J'ai beau essayer il m'affiche toujours la page ou se situe le lien et je ne vois pas ou est le problème.
dans mes balise head j'ai :
<head>
<link rel= "alternate" media="print" href="impression.php?id=<?php echo $id; ?>">
</head>

pour le javascript:
function impression() {
window.frames[0].print();
}

et au niveau du lien:
" style="visibility: hidden">
<td height ="19" colspan="3" align="right">[javascript:impression() ]</td>
leojou
Messages postés
17
Date d'inscription
mercredi 6 décembre 2006
Statut
Membre
Dernière intervention
26 novembre 2007
-
<script type="text/javascript">
if(navigator.appName=='Microsoft Internet Explorer')
{
document.write('[javascript:parent.imprim.focus();
window.print() Imprimer]');
document.write('');
}
else if(navigator.appName=='Netscape')
{
document.write('[javascript:parent.imprim.print(); Imprimer]');
document.write('');
}
else
{
document.write('');
}
</SCRIPT>
leojou
Messages postés
17
Date d'inscription
mercredi 6 décembre 2006
Statut
Membre
Dernière intervention
26 novembre 2007
-
c'est une alternative intéressantei, mais nombreux navigateurs sont configurés pour bloquer les popups, donc ça ne peut pas fonctionner pour tout le monde...

visiblement le problème du script qui figure en haut de page est qu'il n'est pas compatible avec tous les navigateurs. J'ai pu apercevoir sur le net qu'il y a possibilité de coder de manière à ce que le script détecte quel navigateur est utilisé.

Ce qui serait utile, c'est que lorsque safari est détecté, la commande "style="visibility: hidden" ne soit pas prise en compte

c'est du chinois pour moi toute cette prog, ci-dessous j'ai trouvé un script sur le web, mais je ne sais pas où placer le lien html pour activer ce javascript... help !
phpajax
Messages postés
27
Date d'inscription
lundi 8 octobre 2007
Statut
Membre
Dernière intervention
17 octobre 2007
-
essaye cette fonction et dis moi ce que tu en penses
<script language=javascript>

function imprime()
{
// Définit la zone à imprimer
var zi = window.frames[0].innerHTML;
zi =zi+"<h1 style="page-break-after:always">";
zi =zi+" "+ window.frames[1].innerHTML.innerHTML;

var Headers = '<!DOCTYPE HTML PUBLIC ><HTML><HEAD></HEAD>';
zi = zi+"<hr></html>";
// Ouvre une nouvelle fenetre
var f = window.open("", "ZoneImpr", "height=200, width="+screen.width+",toolbar=0, menubar=0, scrollbars=1, resizable=1, status=0, location=0, left=10, top=10");

// Définit le Style de la page
f.document.body.style.color = '#000000';
f.document.body.style.backgroundColor = '#FFFFFF';
f.document.body.style.padding = "10px";

// Ajoute les Données

f.document.write ("" + Headers + zi );
f.document.close();
// Imprime et ferme la fenetre

return;
}
</script>
leojou
Messages postés
17
Date d'inscription
mercredi 6 décembre 2006
Statut
Membre
Dernière intervention
26 novembre 2007
-
en fait, le lien imprimer est innactif maintenant...

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.