簡體   English   中英

如何拍攝網頁的屏幕截圖?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM