특정 레이어만 프린트

-- JQuery 2014. 8. 22. 09:45
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

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>

 

 
추가) 2022-07-06
 
A tiny javascript library to help printing from the web.
 
최근 print.js라는 라이브러리를 이용해 보았다.
프린트 관련하여 상당히 훌륭한 라이브러리인 듯 하다.
 
PDF/HTML/Image/JSON Printing
 
posted by 어린왕자악꿍