如何最好地获取用户的浏览器信息和设置以进行调试?

时间:2009-01-08 23:41:18

标签: browser cross-browser

我的问题是我的用户在显示我正在创建的网站的一部分时遇到问题,但我无法在我的任何浏览器上重现它,即使使用相同版本的浏览器也是如此。

我正在寻找的可能是一个我可以发送给用户的网站,它将告诉我他们正在运行的浏览器版本以及安装的插件以及可能影响页面显示的任何其他信息。

任何人都知道这样的事情吗?

编辑:问题与CSS有关。他们希望在所有文本输入周围都有一些特殊图像,但在用户计算机上,文本输入部分显示在图像之外,后者被设置为背景。

我需要比Google Analytics更多的用户特定信息,因为您无法将特定用户分开。我还怀疑它比用户代理更复杂。

我也可以将网站公之于众,因为他们希望将自己的想法保密,直到它被释放...... grr。

10 个答案:

答案 0 :(得分:4)

我发现将用户发送到支持详细信息站点(http://supportdetails.com/)是获取系统和浏览器细节的好方法。在该网站,他们只需输入您的电子邮件地址,该网站将发送详细信息,如:

  • 操作系统
  • 屏幕分辨率
  • 浏览器名称和版本
  • 浏览器尺寸(查看端口)
  • IP地址
  • 颜色深度
  • 启用Javascript(是/否)
  • 已安装Flash版本
  • 启用Cookie(是/否)。

这些信息也可以导出为csv或PDF。很甜蜜。

该网站由一家名为Imulus的代理商制作。

答案 1 :(得分:2)

不幸的是,我不知道有任何网站会根据您的要求记录用户浏览器的每个细节。

但也许browsershots.org可以帮助您进行调试?它允许您非常轻松地测试您在很多不同浏览器中的设计。

编辑:...不幸的是,仅限于页面加载的初始设计,因为它只是为您截取屏幕截图。

答案 2 :(得分:1)

经典的方法是使用useragent来确定浏览器和操作系统

看起来这个site会为您显示它。

对于插件,有各种方法可以在javascript中测试您正在寻找的插件。

你必须在客户端测试这些,因为(据我所知)无法在服务器端检测这些。

以下粗略示例显示了如何在IE和Mozilla浏览器中测试acrobat reader并返回它是否已安装,如果是,则返回对象中的哪个版本。

function TestAcro()
{
var acrobat=new Object();
acrobat.installed=false;
acrobat.version='0.0';
if (navigator.plugins && navigator.plugins.length)
{
for ( var x = 0, l = navigator.plugins.length; x < l; ++x ) 
{
//Note: Adobe changed the name of Acrobat to Adobe Reader
if ((navigator.plugins[x].name.indexOf('Acrobat') != -1) | (navigator.plugins[x].description.indexOf('Acrobat') != -1) | (navigator.plugins[x].name.indexOf('Adobe Reader') != -1) |(navigator.plugins[x].description.indexOf('Adobe Reader') != -1))
{
acrobat.version=parseFloat(navigator.plugins[x].description.split('Version ')[1]);
if (acrobat.version.toString().length == 1) acrobat.version+='.0';
acrobat.installed=true;
break;
}
}
}
else if (window.ActiveXObject)
{
for (x=2; x<10; x++)
{
try
{
oAcro=eval("new ActiveXObject('PDF.pdfCtrl."+x+"');");
if (oAcro)
{
acrobat.installed=true;
acrobat.version=x+'.0';
}
}
catch(e) {}
}
try
{
oAcro4=new ActiveXObject('PDF.pdfCtrl.1');
if (oAcro4)
{
acrobat.installed=true;
acrobat.version='4.0';
}
}
catch(e) {}
try
{
oAcro7=new ActiveXObject('AcroPDF.PDF.1');
if (oAcro7)
{
acrobat.installed=true;
acrobat.version='7.0';
}
}
catch(e){}
}
return acrobat;
}

答案 3 :(得分:0)

Google分析?如果您的Web服务器上安装了任何类型的Web分析程序,通常它们还会提供操作系统,Web浏览器等信息。您可以使用用户的IP地址在日志中查找其信息。

另外,他们有什么问题?我们也许可以提供帮助..

答案 4 :(得分:0)

我确实找到了这个程序,但遗憾的是它不是免费服务,也不是我真的无法获取该页面上的信息(除非我付钱):http://www.cyscape.com/showbrow.aspx

答案 5 :(得分:0)

如果是CSS问题且问题出在IE(最常见),您可能需要考虑使用IE 7 library

说到CSS ...我在Mozilla浏览器中使它正常工作然后我看到我需要有条件地破解它以使其在IE中工作。这个库派上用场。

如果可能的话,我会尝试限制对主要现代浏览器的支持。 如果可能,请尝试包含移动浏览器(iPhone等)。

希望这有帮助。

答案 6 :(得分:0)

在所有请求中发送的useragent和相关HTTP标头可以为您提供一些信息(浏览器和版本),但是有关客户端安装的详细信息,您可能会对获取客户端浏览器上安装的任意插件列表。这将是一个安全违规,因此除非浏览器故意公开它们,否则如果不安装客户端二进制文件,您将无法访问它。

根据与用户的关系,您可以尝试Go2Meeting或CoPilot之类的内容,以便您可以自己查看错误。这也可以让你仔细阅读浏览器设置和插件。

答案 7 :(得分:0)

我一直在我的ASP.NET网站中使用Ocean's Browser Capabilities。获得许多房产真的很容易。具体来说,我正在使用Ocean2.Web.HttpCapabilities库。

获取浏览器类型和功能:

string browserSettings = Ocean2.Web.HttpCapabilities.BrowserCaps.Build.ProcessDefault(HttpContext.Current.Request);

以下是结果示例:

Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; WOW64; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506; Media Center PC 5.0; InfoPath.2)
os - Windows Vista
platform - WinNT
win16 - false
win32 - true
win64 - true
type - IE7
browser - IE
version - 7.0
BrowserBuild - aol - false
cookies - true
javascript - true
ecmascriptversion - 1.2
vbscript - true
activexcontrols - true
javaapplets - true
screenBitDepth - 1
mobileDeviceManufacturer - Unknown
mobileDeviceModel - Unknown

答案 8 :(得分:0)

你也可以试试这个:

BROWSER PROBE可以找到有关您的浏览器,插件,系统,屏幕等的详细信息。 对于支持人员和临时用户而言,这是一个很好的工具。

Browser Probe

答案 9 :(得分:0)

这些答案中的大多数已经过时了。

我发现http://www.mybrowserinfo.com符合我的需要。希望它可以帮助别人。

更加用户友好的服务:https://aboutmybrowser.com/?nr