Imprimer une zone d'une page web ii

Contenu du snippet

(amélioration du script IMPRIMER UNE ZONE DANS UNE PAGE WEB déjà publié)

Le script permet de sélectionner le contenu d'une zone afin de le charger dans une nouvelle fenêtre pour impression. L'ouverture de la fenêtre d'impression est déclenchée par une action sur un bouton "Imprimer cette page".

Placer le script dans la zone à imprimer, par exemple une cellule de tableau ou un div.

Ce script est compatible DOM et a été testé avec IE5+, Mozilla 1.7.3, Opera 7.54, Nestcape 6 sous Windows.
Un test interdit l'affichage du bouton 'Imprimer cette page" avec les navigateurs anciens comme Netscape 4 et Internet Explorer 4

Source / Exemple :


<script language="javascript">
// ******************************************************************
// Impression d'une zone DOM: IE5+ Mozilla NN6 Win
// pascal.itos@wanadoo.fr
// http://www.dev35.com
// ******************************************************************
function PSR_imprimer () {
	var PSR_f1 = null;
	var PSR_content=document.getElementById('PSR_print').parentNode.innerHTML;
	var PSR_title=document.getElementsByTagName('title')[0].innerText;
	if (PSR_f1) {if(!PSR_f1.closed) PSR_f1.close();}
	PSR_f1 = window.open ('',"PSR_f1", "height=500,width=600,menubar=yes,scrollbars=yes,resizable=yes,,left=10,top=10");  ;
	PSR_f1.document.open();
	PSR_f1.document.write("<html><head><title>" + PSR_title + "</title></head><body bgcolor='#ffffff'>"+PSR_content+"</body></html>");
	PSR_f1.document.close();
	PSR_f1.document.getElementById('PSR_print').style.visibility='hidden';
	PSR_f1.focus();
}
if ( window.name != "PSR_f1" && document.body.parentNode ) {
  document.write ("<div align='right' id='PSR_print'><input  onclick='PSR_imprimer();' type='button'  style='font-family:arial; font-size:11px' value='Imprimer cette page'></div>");
}
</script>

Conclusion :


Il existe un petit problème avec Nestcape 6,
le titre de la nouvelle fenêtre n'est pas correctement recopié.
A voir un jour...

A voir également

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.