window.print() div 를 이용한 부분인쇄
보통 print 함수 사용시 원하지 않는 부분이 출력되는데 div 를 이용하여 원하는 부분만 출력이 가능합니다.
<HTML>
<HEAD>
<STYLE>
DIV { position: relative; }
</STYLE>
<SCRIPT>
var div2print;
function printDiv (id) {
if (document.all && window.print) {
div2print = document.all[id];
window.onbeforeprint = hideDivs;
window.onafterprint = showDivs;
window.print();
}
else if (document.layers) {
div2print = document[id];
hideDivs();
window.print();
}
}
function hideDivs () {
if (document.all) {
var divs = document.all.tags('DIV');
for (var d = 0; d < divs.length; d++)
if (divs[d] != div2print)
divs[d].style.display = 'none';
}
else if (document.layers) {
for (var l = 0; l < document.layers.length; l++)
if (document.layers[l] != div2print)
document.layers[l].visibility = 'hide';
<HEAD>
<STYLE>
DIV { position: relative; }
</STYLE>
<SCRIPT>
var div2print;
function printDiv (id) {
if (document.all && window.print) {
div2print = document.all[id];
window.onbeforeprint = hideDivs;
window.onafterprint = showDivs;
window.print();
}
else if (document.layers) {
div2print = document[id];
hideDivs();
window.print();
}
}
function hideDivs () {
if (document.all) {
var divs = document.all.tags('DIV');
for (var d = 0; d < divs.length; d++)
if (divs[d] != div2print)
divs[d].style.display = 'none';
}
else if (document.layers) {
for (var l = 0; l < document.layers.length; l++)
if (document.layers[l] != div2print)
document.layers[l].visibility = 'hide';
}
}
function showDivs () {
var divs = document.all.tags('DIV');
for (var d = 0; d < divs.length; d++)
divs[d].style.display = 'block';
}
</SCRIPT>
</HEAD>
<BODY>
<DIV>
<p><font size="2"><b>아래 선택 상자에서 원하는 인쇄 영역을 선택한 다음 "특정 부분 인쇄" 버튼을 클릭하세요!</b></font></p>
<FORM>
<SELECT NAME="divSelect">
<OPTION value="d1">첫 번째 영역만 인쇄
<OPTION value="d2">두 번째 영역만 인쇄
<OPTION value="d3">세 번째 영역만 인쇄
</SELECT>
<INPUT TYPE="button"
ONCLICK="var s = this.form.divSelect;
var divID = s.options[s.selectedIndex].value;
printDiv(divID);"
VALUE="특정 부분 인쇄"
>
</FORM>
</DIV>
<DIV ID="d1">
<b>[첫 번째 영역]</b><br>
첫 번째 영역입니다!<br><br>
</DIV>
<DIV ID="d2">
<b>[두 번째 영역]</b><br>
두 번째 영역입니다!<br>
두 번째 영역을 선택하여 인쇄해 보세요!<br><br>
</DIV>
<DIV ID="d3">
<b>[세 번째 영역]</b><br>
세 번째 영역입니다!<br>
세 번째 영역을 선택하여 인쇄해 보세요!<br>
}
function showDivs () {
var divs = document.all.tags('DIV');
for (var d = 0; d < divs.length; d++)
divs[d].style.display = 'block';
}
</SCRIPT>
</HEAD>
<BODY>
<DIV>
<p><font size="2"><b>아래 선택 상자에서 원하는 인쇄 영역을 선택한 다음 "특정 부분 인쇄" 버튼을 클릭하세요!</b></font></p>
<FORM>
<SELECT NAME="divSelect">
<OPTION value="d1">첫 번째 영역만 인쇄
<OPTION value="d2">두 번째 영역만 인쇄
<OPTION value="d3">세 번째 영역만 인쇄
</SELECT>
<INPUT TYPE="button"
ONCLICK="var s = this.form.divSelect;
var divID = s.options[s.selectedIndex].value;
printDiv(divID);"
VALUE="특정 부분 인쇄"
>
</FORM>
</DIV>
<DIV ID="d1">
<b>[첫 번째 영역]</b><br>
첫 번째 영역입니다!<br><br>
</DIV>
<DIV ID="d2">
<b>[두 번째 영역]</b><br>
두 번째 영역입니다!<br>
두 번째 영역을 선택하여 인쇄해 보세요!<br><br>
</DIV>
<DIV ID="d3">
<b>[세 번째 영역]</b><br>
세 번째 영역입니다!<br>
세 번째 영역을 선택하여 인쇄해 보세요!<br>
</DIV></BODY>
</HTML>
</HTML>
네이버 지식인 에서 발취 저작권 문제시 삭제 하겠습니다.
[이 게시물은 관리자님에 의해 2011-10-31 17:16:08 PHP & HTML에서 이동 됨]
게시판 목록
퍼블리셔팁
퍼블리싱과 관련된 유용한 정보를 공유하세요.
질문은 상단의 QA에서 해주시기 바랍니다.
질문은 상단의 QA에서 해주시기 바랍니다.
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|---|
| 197 | JavaScript | 18년 전 | 5213 | ||
| 196 | HTML | 18년 전 | 3808 | ||
| 195 | 기타 |
|
18년 전 | 6289 | |
| 194 | HTML | 18년 전 | 4104 | ||
| 193 | HTML | 18년 전 | 4923 | ||
| 192 | HTML | 18년 전 | 3936 | ||
| 191 | HTML | 18년 전 | 4474 | ||
| 190 | HTML | 18년 전 | 7325 | ||
| 189 | HTML | 18년 전 | 2872 | ||
| 188 | HTML | 18년 전 | 3376 | ||
| 187 | HTML | 18년 전 | 3301 | ||
| 186 | HTML | 18년 전 | 2976 | ||
| 185 | HTML | 18년 전 | 5465 | ||
| 184 | HTML | 18년 전 | 3361 | ||
| 183 | HTML | 18년 전 | 5338 | ||
| 182 | JavaScript | 18년 전 | 4040 | ||
| 181 | HTML | 18년 전 | 3111 | ||
| 180 | HTML | 18년 전 | 3153 | ||
| 179 | HTML | 18년 전 | 3168 | ||
| 178 | HTML | 18년 전 | 3262 | ||
| 177 | HTML | 18년 전 | 3190 | ||
| 176 | HTML | 18년 전 | 4433 | ||
| 175 | HTML | 18년 전 | 3009 | ||
| 174 | HTML | 18년 전 | 3037 | ||
| 173 | HTML | 18년 전 | 3054 | ||
| 172 | HTML | 18년 전 | 3466 | ||
| 171 | HTML | 18년 전 | 4107 | ||
| 170 | HTML | 18년 전 | 3216 | ||
| 169 | HTML | 18년 전 | 3405 | ||
| 168 | HTML | 18년 전 | 3212 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기