나는 html2canvas javascript 라이브러리를 사용하여 매초 여러 번 스크린 샷을 찍지만 브라우저 세션이 상당히 느려집니다. 라이브러리 함수는 기본적으로 DOM 요소를 가져 와서 루프 처리하고 캔버스 요소로 재생합니다. 필자는 매번 문서 본문을 웹 작업자에게 전달하여 개별적으로 기능을 실행하려고합니다. 근로자는 DOM에 액세스 할 수 없다는 것을 알고 있지만 postMessage 인수로 전달하기 위해 본문을 직렬화 할 수있는 방법이 있습니까?웹 작업자가 편집하지 않고 문서 본문을 전달합니다.
0
A
답변
1
내가 postMessage 인수로 전달하기 위해 본문을 직렬화 할 수있는 방법이 있습니까? 토마스 Zato가 지적으로
예, outerHTML
var worker = new Worker("worker.js");
document.addEventListener("DOMContentLoaded", function(event) {
worker.postMessage(document.body.outerHTML);
});
(예를 들어) 및 그러나 https://plnkr.co/edit/M0OoIEiarr0HsOiSANUs?p=preview
에서 볼 수 worker.js
self.onmessage = function(e) {
console.log('In worker', e.data);
};
에 사용 , html2canvas
은 웹 작업자에게는 작동하지 않을 수 있습니다.
관련 문제
- 1. 콘텐츠를 편집하지 않고
- 2. postMessage()를 사용하지 않고 데이터를 웹 작업자에게 전달합니다.
- 3. 원점을 편집하지 않고 변수 편집
- 4. 직접 편집하지 않고 기능 수정
- 5. Angularjs xeditable - 편집하지 않고 저장
- 6. 웹 작업자가 작동하지 않습니다.
- 7. 웹 작업자가 작동하지 않습니다.
- 8. 레지스트리를 편집하지 않고 webBrowser에서 프록시 사용
- 9. web.config를 편집하지 않고 ACS 클레임을받을 수 있습니까?
- 10. Jquery가 문서 본문을 사용하여 일관된 너비를 얻음
- 11. 문서 본문을 클릭하면 iPad 키보드가 숨김
- 12. pom.xml을 편집하지 않고 컴파일러 경고 표시
- 13. 편집하지 않고 UITableview에 사용자 정의 셀을 추가하십시오.
- 14. .Net 콤보 상자 편집하지 않고 간단한 스타일
- 15. standalone.xml을 직접 편집하지 않고 JBoss 7 구성
- 16. my.conf를 편집하지 않고 원격 MySQL 서버에 액세스
- 17. 필드를 비활성화하지 않고 양식 필드를 편집하지 못하게하십시오.
- 18. 내용을 편집하지 않고 MediaWiki의 태그로 기사 감싸기
- 19. 보석을 편집하지 않고 보석에 추가 또는 편집
- 20. 낙타는 경로의 본문을 수정하지 않고 수정 된 본문을 AMQ로 보냅니다.
- 21. python-eve oplog가 문서 본문을 삭제해야합니까?
- 22. 웹 작업자가 액세스 할 수있는 주소
- 23. 복사하지 않고 배열을 전달합니다. C#
- 24. 구문 분석하지 않고 xincludes를 전달합니다.
- 25. 디렉토리에서 1000+ html 파일을 모두 편집하지 않고 보호하십시오.
- 26. 구성 파일을 편집하지 않고 webmatrix에서 경로의 이름을 바꾸려면 어떻게합니까?
- 27. 웹 작업자가 Firefox보다 Webkit에서 다르게 동작합니다.
- 28. AngularJS : 웹 작업자가 돌아온 후에보기가 업데이트되지 않습니다.
- 29. AJAX 요청을 루핑하기 위해 웹 작업자가 필요합니까?
- 30. 웹 작업자가 기본 스레드보다 무겁거나 가벼운가
본문을 일반 HTML 텍스트로 보낼 수 있습니다. 그러나 문제는 근로자가 캔버스 요소에 액세스 할 수없고 그리기 방법이기 때문입니다. AFAIK, html2canvas 라이브러리는 캔버스에 그려진 SVG를 사용합니다. –