15

我想在我们的一个网站上添加一个按钮,允许用户使用我们的错误跟踪系统提交错误。

其中一项功能要求是发送相关页面的屏幕截图。

如果不在最终用户的机器上安装一些东西,我该怎么做?javascript是否有某种屏幕帽api?

4

11 回答 11

14

您可以抓取innerHTML页面,然后在服务器上处理它:

document.getElementsByTagName('html')[0].innerHTML;
// this would also be interactive (i.e. if you've
// modified the DOM, that would be included)
于 2009-03-31T16:21:45.660 回答
6

不,javascript 没有这样的东西。

恐怕这会很困难。如果不安装在用户计算机上,我想不出任何可以做到这一点的东西。

我想被证明是错误的,但至少这是你的答案。

于 2009-03-31T16:18:21.797 回答
6

尽可能多地获取有关使用 jQuery 的用户环境的信息。(jQuery.support)/用户代理/cookies/表单输入值,url(用于获取参数并知道哪个页面有错误)

发送 Moff 提到的页面来源。尝试像现在一样序列化 DOM,以便您可以比较与原始页面的不同之处。

如果您出于历史目的需要保留页面的来源,发送它也很有用,因为当您更新页面时,它会变得不同。

于 2009-03-31T17:35:42.097 回答
4

我建议与FireShot进行某种集成,这是一个免费的 Firefox/IE 插件。

于 2009-03-31T17:18:03.073 回答
3

我同意其他答案 - 没有骰子。

但是,有一个 firefox 插件,Pearl Crescent Page Saver,可能值得研究相关任务。

于 2009-03-31T16:29:44.423 回答
3

看看pagecrop(用jQuery + jCrop插件实现)

于 2009-03-31T16:44:47.040 回答
3

我一定是错过了什么,但你不能...

按键盘上的 PrtScr 并粘贴到电子邮件中。

于 2009-03-31T17:22:19.023 回答
2

看到这个问题。基本上,不,不是用javascript。也许使用 ActiveX,但这又回到了在客户的 PC 上安装东西的问题。

考虑编写一个完全重复用户请求的服务器端脚本(假设它不是在 POST 之后)并存储生成的 html 文件。

于 2009-03-31T16:19:10.253 回答
1

您可能会考虑使用基于 Web 的解决方案,例如Super Screenshot 提供的解决方案!WebShotsPro.com。根据您的需求,例如页面特定区域的屏幕截图,或外部世界无法访问的页面,它可能不适合您,但这是一个想法。

于 2009-03-31T16:28:24.223 回答
1

Chrome 插件 https://chrome.google.com/extensions/detail/ckibcdccnfeookdmbahgiakhnjcddpki

于 2010-12-13T13:49:18.230 回答
0

你还可以看看 Evernote 是如何进行屏幕捕捉的,也许你可以与之相关或创建自己的 chrome 扩展。https://chrome.google.com/webstore/detail/evernote-web-clipper/pioclpoplcdbaefihamjohnefbikjilc?hl=en

于 2014-01-24T23:46:15.907 回答