Как сделать снимок экрана веб-страницы?

Я хочу добавить кнопку на один из наших веб-сайтов, который позволит пользователю регистрировать ошибку с нашей системой отслеживания ошибок.

Один из запросов функции заключается в том, что на экран будет отправлен экран.

Не устанавливая что-то на машине конечных пользователей, как я могу это сделать? Есть ли у javascript какой-то экранный экран api?

Ответ 1

Вы можете захватить innerHTML страницы, а затем обработать ее на сервере:

document.getElementsByTagName('html')[0].innerHTML;
// this would also be interactive (i.e. if you've
// modified the DOM, that would be included)

Ответ 2

Получите как можно больше информации о пользовательской среде с помощью jQuery. (jQuery.support)/пользовательский агент/файлы cookie/входные данные формы, url (для получения параметров и знать, какая страница имела ошибку)

Отправьте исходный код страницы, как указано Moff. Попробуйте выполнить сериализацию DOM, как сейчас, чтобы сравнить то, что отличается от исходной.

Также полезно отправить исходный код страницы, если вам нужно сохранить его в исторических целях, поскольку, когда вы обновляете страницу, это станет другим.

Ответ 3

Нет, у javascript ничего подобного нет.

Я боюсь, что это будет довольно сложно. Я не могу думать ничего такого, что бы сделать это без установки на компьютере пользователя.

Я бы хотел, чтобы вас доказали неправильно, но по крайней мере это ответ для вас.

Ответ 4

Я бы предложил какую-то интеграцию с FireShot, которая является бесплатным дополнением Firefox/IE.

Ответ 5

Я согласен с другими ответами - без кубиков.

Тем не менее, есть плагин firefox, Pearl Crescent Saver, который, возможно, стоит посмотреть на связанные задачи.

Ответ 6

Посмотрите pagecrop (реализована с помощью jQuery + jCrop plug-in)

Ответ 7

Я должен что-то упустить, но не могу просто...

Нажмите PrtScr на клавиатуре и вставьте в электронную почту.

Ответ 8

См. этот вопрос. В принципе, нет, не с javascript. Возможно, с помощью ActiveX, но это касается установки на клиентском ПК.

Рассмотрите возможность написания серверной стороны script, которая точно повторяет запрос пользователя (предполагая, что это не после POST) и сохраняет полученный html файл.

Ответ 9

Вы можете изучить веб-решение, например, предлагаемое в Super Screenshot! или WebShotsPro.com. В зависимости от ваших потребностей, таких как скриншоты определенных областей страниц или страниц, недоступных для внешнего мира, это может не сработать для вас, но это идея.