![](/img/trans.png)
[英]How to take screen shot of the web page email that page in web app
[英]How to take a screen shot of a web page?
我想在我們的一個網站上添加一個按鈕,允許用戶通過我們的錯誤跟蹤系統提交錯誤。
其中一個功能請求是發送相關頁面的屏幕截圖。
如果沒有在最終用戶機器上安裝,我該怎么辦? javascript是否有某種屏幕上限api?
您可以獲取頁面的innerHTML
,然后在服務器上處理它:
document.getElementsByTagName('html')[0].innerHTML;
// this would also be interactive (i.e. if you've
// modified the DOM, that would be included)
不,javascript沒有這樣的東西。
我擔心這會很難。 如果不在用戶計算機上安裝,我無法想到任何可以做到的事情。
我想被證明是錯的,但至少這對你來說是一個答案。
使用jQuery獲取盡可能多的關於用戶環境的信息。 (jQuery.support)/用戶代理/ cookies /表單輸入值,url(用於獲取參數並知道哪個頁面有錯誤)
發送Moff提到的頁面源代碼。 嘗試按原樣序列化DOM,以便比較與原始頁面不同的內容。
如果您需要將其保留用於歷史目的,則發送頁面源也很有用,因為當您更新頁面時,它將變得不同。
我建議與FireShot進行某種集成,這是一個免費的Firefox / IE插件。
我同意其他答案 - 沒有骰子。
但是,有一個firefox插件, Pearl Crescent Page Saver ,可能值得研究相關任務。
看一下pagecrop (用jQuery + jCrop插件實現)
我一定錯過了什么,但你不能......
按鍵盤上的PrtScr並粘貼到電子郵件中。
看到這個問題 。 基本上,不,不是用JavaScript。 也許使用ActiveX,但這又回到了在客戶端PC上安裝的東西。
考慮編寫一個服務器端腳本,完全重復用戶的請求(假設它不是在POST之后)並存儲生成的html文件。
您可能會考慮使用基於Web的解決方案,例如Super Screenshot提供的解決方案! 或WebShotsPro.com 。 根據您的需要,例如頁面特定區域的屏幕截圖或外部世界無法訪問的頁面,它可能對您不起作用,但這是一個想法。
您還可以看看Evernote如何進行屏幕捕獲,也許您可以配合它或創建自己的chrome擴展。 https://chrome.google.com/webstore/detail/evernote-web-clipper/pioclpoplcdbaefihamjohnefbikjilc?hl=en
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.