특정 레이어만 프린트 -- JQuery




javascript로 웹페이지 전체를 프린트하기 위해서 아래와 같이 사용한다.

window.print();


그런데, 만약에 특정 레이어만을 효율적으로 프린트하고 싶다면 jQuery Print Element를 이용할 수 있다.
다운로드는
http://projects.erikzaadi.com/jQueryPlugins/jQuery.printElement/에서 할 수 있으며, 샘플도 확인이 가능하다.


<!- printElement가 jquery버전에 따라 opera항목을 찾지 못하는 버그가 있어 jquery.mb.browser를 넣어주면 해결된다 -->

<script type="text/javascript" src="/js/jquery.mb.browser.min.js"></script>
<script type="text/javascript" src="/js/jquery.printElement.min.js"></script>

<script>
    $("#test").printElement({});
</script>

<div id="test"><b>PRINT CONTENT</b></div>


미리보기 창 없이 인쇄
printElement({});

인쇄 후 미리보기 창이 사라짐
printElement({ printMode: 'popup' });

인쇄 후 미리보기 창이 남아있음
printElement({ leaveOpen: true, printMode: 'popup' });

CSS무시
printElement({ overrideElementCSS: true });

외부 CSS적용
printElement({ overrideElementCSS: ['http://xxxx.com/test.css'] });




추가) 2018-10-16

최근에 다시 해보니 아래와 같은 에러가 발생한다.

Uncaught TypeError: Cannot read property 'opera' of undefined

해결방법은 아래의 js를 추가하면 된다.

<script src="http://code.jquery.com/jquery-migrate-1.0.0.js"></script>


덧글

댓글 입력 영역



20140817_300_250

통계 위젯 (화이트)

7177
1073
1039939