js获取客户端网卡的IP地址、MAC地址


Posted in Javascript onMarch 26, 2014
<html> 
<head> 
<title></title> 
</head> 
<body> 
<object classid="CLSID:76A64158-CB41-11D1-8B02-00600806D9B6" id="locator" style="display:none;visibility:hidden"></object> 
<object classid="CLSID:75718C9A-F029-11d1-A1AC-00C04FB6C223" id="foo" style="display:none;visibility:hidden"></object> 
<form name="myForm"> 
<br/>MAC地址:<input type="text" name="macAddress"> 
<br/>IP地址:<input type="text" name="ipAddress"> 
<br/>主机名:<input type="text" name="hostName"> 
</form> 
</body> 
</html> 
<script language="javascript"> 
var sMacAddr=""; 
var sIPAddr=""; 
var sDNSName=""; 
var service = locator.ConnectServer(); 
service.Security_.ImpersonationLevel=3; 
service.InstancesOfAsync(foo, 'Win32_NetworkAdapterConfiguration'); 
</script> 
<script FOR="foo" EVENT="OnObjectReady(objObject,objAsyncContext)" LANGUAGE="JScript"> 
if(objObject.IPEnabled != null && objObject.IPEnabled != "undefined" && objObject.IPEnabled == true){ 
if(objObject.IPEnabled && objObject.IPAddress(0) !=null && objObject.IPAddress(0) != "undefined" && objObject.DNSServerSearchOrder!=null) 
sIPAddr = objObject.IPAddress(0); 
if(objObject.MACAddress != null &&objObject.MACAddress != "undefined") 
sMacAddr = objObject.MACAddress; 
if(objObject.DNSHostName != null &&objObject.DNSHostName != "undefined") 
sDNSName = objObject.DNSHostName; 
} 
</script> <script FOR="foo" EVENT="OnCompleted(hResult,pErrorObject, pAsyncContext)" LANGUAGE="JScript"> 
myForm.macAddress.value=sMacAddr; 
myForm.ipAddress.value=sIPAddr; 
myForm.hostName.value=sDNSName; 
</script>

代码是网上找到,但是经过修改。

原因是比如你笔记本有多张网卡,会出现获取你未联网或者禁用网卡的信息,解决办法:加限制条件:

objObject.DNSServerSearchOrder!=null

加上这个限制条件后,就能取到联网客户端的网卡IP地址了。

不过还有个问题就是只能限制IE浏览器,而且Activex必须要全部启用。

Javascript 相关文章推荐
JS 参数传递的实际应用代码分析
Sep 13 Javascript
js模拟类继承小例子
Jul 17 Javascript
Jquery截取中文字符串的实现代码
Dec 22 Javascript
js 字符串转换成数字的三种方法
Mar 23 Javascript
js获取滚动距离的方法
May 30 Javascript
javascript中substring()、substr()、slice()的区别
Aug 30 Javascript
jQuery+CSS实现的table表格行列转置功能示例
Jan 08 jQuery
vue单页开发父子组件传值思路详解
May 18 Javascript
微信小程序实现弹出层效果
May 26 Javascript
小程序登录态管理的方法示例
Nov 13 Javascript
详解vue使用$http服务端收不到参数
Apr 19 Javascript
Node.JS发送http请求批量检查文件中的网页地址、服务是否有效可用
Nov 20 Javascript
javascript判断chrome浏览器的方法
Mar 26 #Javascript
Javascript 浮点运算精度问题分析与解决
Mar 26 #Javascript
javascript 3d 逐侦产品展示(核心精简)
Mar 26 #Javascript
Node.js模拟浏览器文件上传示例
Mar 26 #Javascript
JavaScript关闭当前页面(窗口)不带任何提示
Mar 26 #Javascript
JavaScript数字和字符串转换示例
Mar 26 #Javascript
jquery实现瀑布流效果分享
Mar 26 #Javascript
You might like
让你的PHP同时支持GIF、png、JPEG
2006/10/09 PHP
php遍历数组的方法分享
2012/03/22 PHP
PHP中exec函数和shell_exec函数的区别
2014/08/20 PHP
CI框架实现优化文件上传及多文件上传的方法
2017/01/04 PHP
PHP编程计算文件或数组中单词出现频率的方法
2017/05/22 PHP
PHP钩子实现方法解析
2019/05/21 PHP
laravel 实现根据字段不同值做不同查询
2019/10/23 PHP
Yii 框架使用数据库(databases)的方法示例
2020/05/19 PHP
jquery ui dialog ie8出现滚动条的解决方法
2010/12/06 Javascript
JS的replace方法详细介绍
2012/11/09 Javascript
node.js中的fs.createReadStream方法使用说明
2014/12/17 Javascript
JS使用ajax从xml文件动态获取数据显示的方法
2015/03/24 Javascript
再谈JavaScript线程
2015/07/10 Javascript
javascript中caller和callee详解
2015/08/10 Javascript
jQuery CSS3相结合实现时钟插件
2016/01/08 Javascript
浅谈js内置对象Math的属性和方法(推荐)
2016/09/19 Javascript
JavaScript实现水平进度条拖拽效果
2017/01/18 Javascript
Angular搜索 过滤 批量删除 添加 表单验证功能集锦(实例代码)
2017/10/25 Javascript
小程序实现订单倒计时功能
2019/04/23 Javascript
Python内置数据结构与操作符的练习题集锦
2016/07/01 Python
python脚本替换指定行实现步骤
2017/07/11 Python
利用Python+Java调用Shell脚本时的死锁陷阱详解
2018/01/24 Python
python3 字符串知识点学习笔记
2020/02/08 Python
Python线程协作threading.Condition实现过程解析
2020/03/12 Python
深入浅析python 中的self和cls的区别
2020/06/20 Python
5分钟快速掌握Python定时任务框架的实现
2021/01/26 Python
css3实现图片遮罩效果鼠标hover以后出现文字
2013/11/05 HTML / CSS
css3学习系列之移动属性详解
2017/07/04 HTML / CSS
移动端HTML5 input常见问题(小结)
2020/09/28 HTML / CSS
英国最大的手表网站:The Watch Hut
2017/03/31 全球购物
Maisons du Monde德国:法国家具和装饰的市场领导者
2019/07/26 全球购物
Crocs欧洲官网:Crocs Europe
2020/01/14 全球购物
应届毕业生应聘自荐信
2013/12/07 职场文书
暑期培训班策划方案
2014/08/26 职场文书
2014优秀大学生简历自我评价
2014/09/15 职场文书
2014年旅游局法制宣传日活动总结
2014/11/01 职场文书