1. Описание программы
1) Эта программа умеет выбирать область на странице для печати и печатать в режиме iframe;
2) Отличие от исходного print() заключается в том, что содержимое текущей страницы может быть полностью сохранено после отмены печати страницы.
2. Часть кода
1) Функция JS:
Скопируйте код кода следующим образом:
функция do_print(id_str)//id-str печатает идентификатор области
{
вар эль = document.getElementById(id_str);
вар iframe = document.createElement('IFRAME');
вардок = ноль;
iframe.setAttribute('style', 'position:absolute;width:0px;height:0px;left:-500px;top:-500px;');
document.body.appendChild(iframe);
документ = iframe.contentWindow.document;
//Внедрение собственного стиля CSS для печати, www.111Cn.net изменит его в соответствии с реальной ситуацией.
doc.write("<LINK rel="stylesheet" type="text/css" href="css/print.css">");
doc.write('<div>' + el.innerHTML + '</div>');
документ.закрыть();
iframe.contentWindow.focus();
iframe.contentWindow.print();
если (navigator.userAgent.indexOf("MSIE") > 0)
{
document.body.removeChild(iframe);
}
}
2) HTML:
Скопируйте код кода следующим образом:
//Область печати:
<div id="print_box">
...
</div>
// вызов печати
<button onclick="javascript:do_print('print_box');">Печать</button>
3. Тест
Нажмите кнопку печати на странице, чтобы проверить печать;
В дополнение к вышеперечисленным методам мы также можем использовать jquery для создания экземпляров, код выглядит следующим образом:
Скопируйте код кода следующим образом:
<script type="text/javascript" src="jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="jquery.PrintArea.js"></script>
<скрипт>
$(документ).ready(функция(){
$("input#biuuu_button").click(function(){
$("div#myPrintArea").printArea();
});
});
</скрипт>
<input id="biuuu_button" type="button" value="Print"></input>
<div id="myPrintArea">.....Часть печати текста.....</div>
Если мы хотим добиться области печати, мы можем попробовать следующий метод.
В следующей статье рассказывается о очень простом методе реализации функции печати страницы. Он позволяет печатать не только всю страницу, но и определенную ее область.
Скопируйте код кода следующим образом:
<html>
<голова>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script Language="JavaScript">
функция printdiv(printpage){
var headstr="<html><head><title></title></head><body>";
вар footstr="</body>";
вар newstr=document.all.item(printpage).innerHTML;
вар oldstr=document.body.innerHTML;
document.body.innerHTML=headstr+newstr+footstr;
окно.печать();
document.body.innerHTML=oldstr;
вернуть ложь;
}
</скрипт>
<title>печать div</title>
</голова>
<тело>
<input type="button" onClick="printdiv('div_print');" value="print">
<div id="div_print">
<h1 style="Color:Red">Область печати: www.VeVB.COm</h1>
</div>
Эту область невозможно распечатать!
</тело>
</html>