希望我的回答能对明团你有激扰橘所帮助。
抄自wiki…
一般使用Trident的浏览器除了IE外都只是IE的shell,所以排除Trident就好了。
—-
内核
Trident:Internet Explorer所使用
Gecko:Netscape 6以后版本以及Firefox所使用空物
KHTML:KDE开发团队所开发,主要由Konqueror所使用。
Presto:Opera 7开始采用
WebCore:苹果电脑修改KHTML而来,主要由Safari所使用。
—-
创作者 首次公开发表日期 最新的稳定版本 价逗亏键格 (USD) 软件许可证 目前的排版引擎
Amaya W3C 1996年11月14日 免费 W3C ?
Avant Browser Avant Force 1999年 免费 未知 Trident
AOL Explorer 美国在线 2023年6月 1.2 免费 专有软件 Trident
Camino The Camino Project 2023年2月 1.6.8
(2023年6月22日)
免费 MPL/GPL/LGPL 三方授权 Gecko
Chrome Google 2023年9月3日 Windows: 3.0.197.11, Linux: 3.0.197.11, Mac: 3.0.197.12 .
(; 2 小时前)
免费 BSD License(参见) WebKit
Dillo Arellano Cid、Geerken 和 Rota 等人 1999年12月 0.8.6 免费 GPL ?
ELinks Baudis、Fonseca 等人 2023年12月 0.10.4 免费 GPL ?
Epiphany GNOME 2023年12月 2.26.0 免费 GPL Gecko
Flock Flock Inc. 2023年10月14日 1.1.2 免费 MPL、MPL/GPL/LGPL 三方授权 Gecko
Galeon GNOME 2023年6月 2.0.7 免费 GPL Gecko
iCab iCab Company 1998年 4.6.0 预览版免费
专业版25欧元 专有软件 WebKit
Internet Explorer Microsoft、Spyglass 1995年8月 8.0.6001.18702
(2023年3月20日)
免费 专有软件 Trident (Win)、
Taan (Mac)
K-Meleon Doozan、Erikson 和 Vallet 等人 2023年11月26日 1.1.5 免费 GPL Gecko
Konqueror The KDE Team 2023年10月 3.5.7 免费
(KDE的一部分) GPL KHTML (可选装Gecko)
Links Patocka 等人 1999年11月24日 0.99 免费 GPL ?
Lynx Montulli、Grobe 和 Rezac 等人 1993年7月 2.8.5 免费 GPL ?
Maxthon MySoft 2023年?月 2.5.3.80
(; 18 天前)
免费 专有软件 Gecko(1),Trident(1、2、3),山巧WebKit(3),三大主版本同时发展
Midori Christian Dywan 2023年?月 0.1.4 免费 LGPL WebCore
Mosaic Marc Andreessen和Eric Bina、NCSA 1993年4月22日 2.6 免费
(非商业使用) 专有软件 ?
Mozilla Suite Mozilla基金会 1998年12月7日 1.7.13 免费 MPL/GPL/LGPL 三方授权 Gecko
Mozilla Firefox Mozilla基金会 2023年9月23日 3.5.2
(; 5 天前)
免费 MPL, MPL/GPL/LGPL 三方授权 Gecko
Netscape 网景通信公司, AOL 2023年4月5日 7.2 免费 私有, MPL/GPL/LGPL 三方授权 Gecko
Netscape Browser Mercurial Communications for AOL 2023年11月30日 8.1.3 免费 私有, MPL/GPL/LGPL 三方授权 Gecko, Trident
Netscape Communicator 网景通信 1997年6月 4.8 免费 私有 Mariner
Netscape Navigator 网景通信 1994年10月13日 4.08 免费 私有 Mariner
Netscape Navigator 9 网景通信 2023年6月5日 9.0.0.6 / 2023年2月20日 免费 私有, MPL/GPL/LGPL 三方授权 Gecko
OmniWeb Omni Group 1995年3月17日 5.9.2 免费 私有软件、LGPL WebCore
Opera Opera Software 1996年9月 9.64
(; 5 个月前)
免费 专有软件 Presto
Safari 苹果公司 2023年6月23日 4.0.2
(; 31 天前)
免费 专有软件、LGPL WebCore
SeaMonkey Mozilla基金会 2023年9月15日 1.1.17
(; 47 天前)
免费 MPL/GPL/LGPL 三方授权 Gecko
Sleipnir 2 Fenrir 2023年6月30日 2.6/2023年11月13日 免费 专有软件 Trident/Gecko双内核
世界之窗浏览器 Phoenix Studio 2023年3月3日 3.0.4.5
(2023年7月30日)
免费 未知 Trident
WorldWideWeb Tim Berners-Lee 1991年8月 0.17 免费 公有领域 NEXTSTEP内置组件
腾讯TT 腾讯 2023年11月15日 4.4 免费 未知 Trident
apple
公司的
safari
firfox
这个炒得最颂掘凯热,对div+css支持好
opera
这个也是老牌的。也不错。速度快,但是在div+css的兼容上和IE和firefox有差别。
基野唤本上ie/firfox/opera
三巨头。
其他都没什么太散键大的市场。
的chrome
浏览器
没什么太大的。
chrome
火狐
他们是如何检测我的IP的呢?
她的网址自动检测的
保存为.asp文件。加一个IP数据库就OK了
非常简单
调用代码
Internet Explorer 4.0″
ElseIf InStr(User_Agent, “Netscape”) Then
ClientInfo = “Netscape®”
ElseIf InStr(User_Agent, “Opera”) Then
ClientInfo = “Opera®”
Else
ClientInfo = “Other”
End If
End If
End Function
‘ ============================================
‘ ScreenIP物理定位搜索类
‘ ============================================
Class TQQWry
‘ ============================================
‘ 变量声名
‘ ============================================
Dim Country, LocalStr, Buf, OffSet
Private StartIP, EndIP, CountryFlag
Public QQWryFile
Public FirstStartIP, LastStartIP, RecordCount
Private Stream, EndIPOff
‘ ============================================
‘ 类模块初始化
‘ ============================================
Private Sub Class_Initialize
Country = “”
LocalStr = “”
StartIP = 0
EndIP = 0
CountryFlag = 0
FirstStartIP = 0
LastStartIP = 0
EndIPOff = 0
QQWryFile = Server.MapPath(“QQWry.dat”) ‘QQ IP库路径,要转换成物理路径
End Sub
‘ ============================================
‘ IP地址转换成整数
‘ ============================================
Function IPToInt(IP)
Dim IPArray, i
IPArray = Split(IP, “.”, -1)
FOr i = 0 to 3
If Not IsNumeric(IPArray(i)) Then IPArray(i) = 0
If CInt(IPArray(i)) 255 Then IPArray(i) = 255
Next
IPToInt = (CInt(IPArray(0))*256*256*256) + (CInt(IPArray(1))*256*256) + (CInt(IPArray(2))*256) + CInt(IPArray(3))
End Function
‘ ============================================
‘ 整数逆转IP地址
‘ ============================================
Function IntToIP(IntValue)
p4 = IntValue – Fix(IntValue/256)*256
IntValue = (IntValue-p4)/256
p3 = IntValue – Fix(IntValue/256)*256
IntValue = (IntValue-p3)/256
p2 = IntValue – Fix(IntValue/256)*256
IntValue = (IntValue – p2)/256
p1 = IntValue
IntToIP = Cstr(p1) & “.” & Cstr(p2) & “.” & Cstr(p3) & “.” & Cstr(p4)
End Function
‘ ============================================
‘ 获取开始IP位置
‘ ============================================
Private Function GetStartIP(RecNo)
OffSet = FirstStartIP + RecNo * 7
Stream.Position = OffSet
Buf = Stream.Read(7)
EndIPOff = AscB(MidB(Buf, 5, 1)) + (AscB(MidB(Buf, 6, 1))*256) + (AscB(MidB(Buf, 7, 1))*256*256)
StartIP = AscB(MidB(Buf, 1, 1)) + (AscB(MidB(Buf, 2, 1))*256) + (AscB(MidB(Buf, 3, 1))*256*256) + (AscB(MidB(Buf, 4, 1))*256*256*256)
GetStartIP = StartIP
End Function
‘ ============================================
‘ 获取结束IP位置
‘ ============================================
Private Function GetEndIP()
Stream.Position = EndIPOff
Buf = Stream.Read(5)
EndIP = AscB(MidB(Buf, 1, 1)) + (AscB(MidB(Buf, 2, 1))*256) + (AscB(MidB(Buf, 3, 1))*256*256) + (AscB(MidB(Buf, 4, 1))*256*256*256)
CountryFlag = AscB(MidB(Buf, 5, 1))
GetEndIP = EndIP
End Function
‘ ============================================
‘ 获取地域信息,包含国家和和省市
‘ ============================================
Private Sub GetCountry(IP)
If (CountryFlag = 1 Or CountryFlag = 2) Then
Country = GetFlagStr(EndIPOff + 4)
If CountryFlag = 1 Then
LocalStr = GetFlagStr(Stream.Position)
‘ 以下用来获取数据库版本信息
If IP >= IPToInt(“255.255.255.0”) And IP 127 Then
If Stream.EOS Then Exit Do
GetStr = GetStr & Chr(AscW(ChrB(AscB(Stream.Read(1))) & ChrB(C)))
Else
GetStr = GetStr & Chr(c)
End If
Loop
End Function
‘ ============================================
‘ 核心函数,执行IP搜索
‘ ============================================
Public Function QQWry(DotIP)
Dim IP, nRet
Dim RangB, RangE, RecNo
IP = IPToInt (DotIP)
Set Stream = CreateObject(“ADodb.Stream”)
Stream.Mode = 3
Stream.Type = 1
Stream.Open
Stream.LoadFromFile QQWryFile
Stream.Position = 0
Buf = Stream.Read(8)
FirstStartIP = AscB(MidB(Buf, 1, 1)) + (AscB(MidB(Buf, 2, 1))*256) + (AscB(MidB(Buf, 3, 1))*256*256) + (AscB(MidB(Buf, 4, 1))*256*256*256)
LastStartIP = AscB(MidB(Buf, 5, 1)) + (AscB(MidB(Buf, 6, 1))*256) + (AscB(MidB(Buf, 7, 1))*256*256) + (AscB(MidB(Buf, 8, 1))*256*256*256)
RecordCount = Int((LastStartIP – FirstStartIP)/7)
‘ 在数据库中找不到任何IP地址
If (RecordCount StartIP) Then
RangB = RecNo
Else
RangE = RecNo
End If
Loop
Call GetStartIP(RangB)
Call GetEndIP()
If (StartIP = IP) Then
‘ 没有找到
nRet = 0
Else
‘ 正常
nRet = 3
End If
Call GetCountry(IP)
QQWry = nRet
End Function
‘ ============================================
‘ 类终结
‘ ============================================
Private Sub Class_Terminate
On ErrOr Resume Next
Stream.Close
If Err Then Err.Clear
Set Stream = Nothing
End Sub
End Class
%>
百度就能搜索得到,