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 相关文章推荐
网页设计常用的一些技巧
Dec 22 Javascript
jquery下动态显示jqGrid以及jqGrid的属性设置容易出现问题的解决方法
Oct 22 Javascript
Jquery插件之打造自定义的select标签
Nov 30 Javascript
Node.js中使用Log.io在浏览器中实时监控日志(等同tail -f命令)
Sep 17 Javascript
js实现点击左右按钮轮播图片效果实例
Jan 29 Javascript
基于jQuery实现的双11天猫拆红包抽奖效果
Dec 01 Javascript
vue+springboot实现项目的CORS跨域请求
Sep 05 Javascript
vue项目添加多页面配置的步骤详解
May 22 Javascript
weui中的picker使用js进行动态绑定数据问题
Nov 06 Javascript
vuex state中的数组变化监听实例
Nov 06 Javascript
基于p5.js 2D图像接口的扩展(交互实现)
Nov 30 Javascript
Ajax实现局部刷新的方法实例
Mar 31 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基于单例模式实现的mysql类
2016/01/09 PHP
在 IE 中调用 javascript 打开 Excel 表
2006/12/21 Javascript
原生js 秒表实现代码
2012/07/24 Javascript
动态创建script标签实现跨域资源访问的方法介绍
2014/02/28 Javascript
JavaScript中的异常捕捉介绍
2014/12/31 Javascript
JavaScript基于对象去除数组重复项的方法
2016/10/09 Javascript
Zabbix添加Node.js监控的方法
2016/10/20 Javascript
jQuery制作input提示内容(兼容IE8以上)
2017/07/05 jQuery
JS 判断某变量是否为某数组中的一个值的3种方法(总结)
2017/07/10 Javascript
Vue 兄弟组件通信的方法(不使用Vuex)
2017/10/26 Javascript
webpack4+Vue搭建自己的Vue-cli项目过程分享
2018/08/29 Javascript
基于Nodejs的Tcp封包和解包的理解
2018/09/19 NodeJs
JavaScript学习笔记之图片库案例分析
2019/01/08 Javascript
bootstrap tooltips在 angularJS中的使用方法
2019/04/10 Javascript
小程序关于请求同步的总结
2019/05/05 Javascript
JS字符串补全方法padStart()和padEnd()
2020/05/27 Javascript
ES6 Generator基本使用方法示例
2020/06/06 Javascript
tensorflow学习笔记之简单的神经网络训练和测试
2018/04/15 Python
Python3 中把txt数据文件读入到矩阵中的方法
2018/04/27 Python
Python之dict(或对象)与json之间的互相转化实例
2018/06/05 Python
python实现俄罗斯方块
2018/06/26 Python
解决python opencv无法显示图片的问题
2018/10/28 Python
使用Python将Mysql的查询数据导出到文件的方法
2019/02/25 Python
python 实现人和电脑猜拳的示例代码
2020/03/02 Python
python 安装impala包步骤
2020/03/28 Python
用python批量移动文件
2021/01/14 Python
用CSS3来实现社交分享按钮
2014/11/11 HTML / CSS
CSS中越界问题的经典解决方案【推荐】
2016/04/19 HTML / CSS
英国领先的杂志订阅网站:Magazine.co.uk
2018/01/25 全球购物
中国梦的演讲稿
2014/01/08 职场文书
机电一体化应届生求职信范文
2014/01/24 职场文书
美术毕业生求职信
2014/02/25 职场文书
活动总结模板
2014/05/09 职场文书
技能比武方案
2014/05/21 职场文书
2015年乡镇安全生产工作总结
2015/05/19 职场文书
小学生班干部竞选稿
2015/11/20 职场文书