浏览器信息反馈工具

在当今的网络世界中,用户反馈对于网站和应用程序的改进至关重要。为了更好地收集用户意见,开发者需要一个强大而灵活的工具来收集和处理这些反馈。本文将介绍一个基于Typescript、JQuery和HTML2Canvas的浏览器信息反馈工具,它可以帮助开发者轻松地从用户那里获取反馈信息。

这个工具类似于Google Feedback,它允许用户在网页上直接提供反馈,而无需离开当前页面。用户可以通过点击一个按钮来激活反馈模块,然后输入他们的反馈内容。此外,这个工具还支持屏幕截图功能,用户可以截取当前页面的截图并将其附加到反馈中。

要使用这个工具,首先需要确保网页中已经加载了JQuery。可以通过以下方式从JQuery的CDN加载它:

<script src="https://code.jquery.com/jquery-1.11.2.min.js"></script>

接下来,需要在HTML文件中添加html2canvas.js库,以便能够创建屏幕截图:

<script src="../src/html2canvas.js"></script>

为了使用反馈工具,还需要添加feedback.js库(这是Typescript编译后的版本):

<script src="../src/feedback.js"></script>

此外,还需要加载反馈工具的样式表:

<link href="../src/styles/feedback.rtl.css" rel="stylesheet" />

以下是如何在网页中添加反馈按钮的示例:

<button id="content">反馈</button>

在JavaScript中,可以这样初始化反馈工具:

function onStart() { console.log('onStart'); } function onClose() { console.log('onClose'); } var options = new phoenix.feedbackOptions(onStart, onClose); new phoenix.feedback("content", options);

或者,也可以这样初始化:

new phoenix.feedback("content", new phoenix.feedbackOptions(onStart, onClose));

在phoenix.feedbackOptions类中,可以定义五个参数,包括onStart和onClose回调函数、发送反馈数据的URL、以及服务器上模板文件的地址。默认情况下,模板文件的地址是"../src/templates/fa-Ir/templates.html",可以根据自己的需要进行自定义。

用户提交的反馈信息将通过Ajax POST请求发送,信息格式为JSON。以下是反馈信息的示例:

{ browserInfo: { appCodeName: navigator.appCodeName, appName: navigator.appName, appVersion: navigator.appVersion, cookieEnabled: navigator.cookieEnabled, onLine: navigator.onLine, platform: navigator.platform, userAgent: navigator.userAgent, currentUrl: document.URL, html: $('html').html().replace($('#fb-module').html(), ''), screenSnapshot: 'base64 encoded data URI' }, note: '用户描述' }

这个工具支持多种浏览器,包括Internet Explorer 9及以上版本、所有版本的Google Chrome、Firefox 3.5及以上版本、以及较新版本的Safari和Opera。此外,它还支持从右到左(rtl)和从左到右(ltr)的文本方向。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485