2009-01-08 74 views
4

我的问题是,我有一个用户在显示我正在创建的网站的一部分时出现问题,但即使使用相同版本的浏览器,我也无法在任何浏览器上重现该问题。如何最好地获取用户的浏览器信息和设置以进行调试?

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

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

编辑:问题与CSS有关。他们想要在所有文本输入周围显示特殊图像,但在用户计算机上,文本输入会部分显示在设置为背景的图像之外。

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

我也可以把网站公开放在那里,因为他们想保持私人的想法,直到它被释放...... grr。

回答

1

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

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

编辑:...不幸的是限制在页面加载的初始设计,因为它只是为你截图。

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; 
} 
+0

useragent.org似乎已经陷入域棚户区居民的手中。 – nedk 2012-02-29 21:44:28

0

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

另外,它们有什么问题?我们可能会帮助..

0

我没有找到这个程序,但不幸的是它不是一个免费服务,也不是真的反正对我来说,得到的信息是页面上(除非我为它付出):http://www.cyscape.com/showbrow.aspx

+0

发送给他们链接,复制,粘贴电子邮件 – BCS 2009-01-08 23:59:47

0

如果它是一个CSS问题和问题是与IE(最经常),你可能要考虑使用IE 7 library

当涉及到CSS ...我在Mozilla浏览器中正常工作,然后我看到我需要有条件地破解,使其在IE中工作。这个库很方便。

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

希望这会有所帮助。

+0

问题在于它并不是所有的互联网浏览器,只有1个版本我猜测。我试过在我的电脑上使用IE7和6(约5个),并且没有任何问题。 – 2009-01-09 00:00:03

+0

如果问题出在IE 5.5,我会提醒你的客户,这是一个不应该使用的真正旧的浏览器。如果是IE 8 ....那么我并不感到惊讶。 – 2009-01-09 00:03:59

+0

他们正在运行IE 7(从屏幕截图中确定90%)。 – 2009-01-09 00:08:59

0

在所有请求中发送的useragent和相关HTTP头可以为您提供一些信息(浏览器和版本),但有关客户端安装的详细信息,您可能不太会运用自动捕获机制客户端浏览器上安装的任意插件列表。这会违反安全性,因此除非浏览器有意暴露他们,否则无法安装客户端二进制文件就无法访问此文件。

根据与用户的关系,您可以尝试诸如Go2Meeting或CoPilot之类的东西,以便您可以亲自看到该错误。这也可以让你仔细阅读浏览器设置和插件。

+0

我有一个屏幕快照,向我显示了这个问题,这对于这个问题来说是“足够”的。 – 2009-01-09 00:01:27

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 
0

你也可以试试这个:

浏览器探头查找有关详情,请浏览器,插件,系统,屏幕等等。 支持员工和临时用户的绝佳工具。

Browser Probe

4

我发现,发送用户的支持详细信息的网站(http://supportdetails.com/)是一个伟大的方式来获得系统和浏览器的细节。在该站点的所有他们所要做的就是输入你的电子邮件地址,该网站将发送详细信息,如:

  • 操作系统
  • 屏幕分辨率
  • 浏览器名称和版本
  • 浏览器的大小(视口)
  • IP地址
  • 色彩深度
  • 使用Javascript功能(Y/N)
  • 安装Flash版本
  • 已启用Cookie(是/否)。

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

该网站由一个名为Imulus的机构。

相关问题