在线地图已经是很平常的应用,Google Map 甚至可以用作驾驶导航仪,然而,这些应用的实现涉及到千丝万缕的艰辛工作,仅仅是定位你现在的位置,就有很多技术,有幸的是,如今在你的 Web 站点中,你可以通过短短的几行代码,获得一个用户的地理位置,本文介绍的是用在 Web 中的各种地理定位技术。
通过 IP 地址获得用户的地理位置信息
互联网不过是一个巨大的网络,上面的每一台电脑对应一个 IP 地址,通过这个 IP 地址,可以知道这个用户在什么位置,我们可以通过查询 Maxmind GeoIP 数据库 获得,Maxmind 还提供了一个 JavaScript 接口让你在网站上实现这一功能。
这个方法(演示)有一个问题,就是说,你获得的 IP 地理位置信息未必非常准确,因为这个 IP 是你的 ISP 分配给你的,你获得的事实上是 ISP 的地理位置,另外,如果你使用 VPN,你实际的得到可能是十万八千里之外的地方了。
通过 W3C Geo API 获得用户地理位置
通过 IP 地址获取用户地理位置还有一个棘手的问题,就是安全和隐私问题,毕竟,并不是每个用户都愿意自己的地理位置信息被别人知道,鉴于此,人们开发了很多技术,Google Gears 拥有一个 Geo-Location 服务,Plazes 帮助你保存你的位置,而 Yahoo Fire Eagle 算得上这类技术中最顺手的一个。然而这些技术共同的问题是,它们要求用户要么安装一个插件,要么需要访问特定的 Web 服务,这有些麻烦。
W3C 有一个 Geo-Location API 可以帮助浏览器制造商,在浏览器中集成地理信息功能。Firefox 3.5 以上的浏览器支持 W3C Geo-LocationAPI,同样支持该 API 的还有 iPhone 上的 Safari 浏览器(需要 [...]
日前,Mozilla 的 Arun Ranganathan 向 W3C 提交了一个草案,旨在推出一个 JavaScript API,让 JavaScript 脚本直接操作本地文件,Firefox 的最新浏览器版本中已经对该 API 提供了大量的支持,不过出于安全考虑,该API 将只对本地文件提供有限的访问。
该 API 引入了一个 FileReader 对象,可以异步加载本地文件系统中的文件,并允许开发者为诸如加载失败,进度,加载完成等事件分配回调函数,它提供的方法可以从本地文件中读取文本或二进制数据,并通过一个 abort 方法随时打断操作。
FileReader 对象使客户端的文件访问成为现实,用户不必再象以前那样首先将文件上传到服务器才能处理,事实上,IE 和 Firefox 已经拥有一些非标准的方法访问本地文件,但这些方法并非标准 JavaScript 行为。
FileReader 对象并不需要特别的权限,但出于显然的安全考虑,直接使用文件路径进行访问是不允许的,必须结合常规的 HTML file 对象,用户点击浏览之后,选择本地文件,JavaScript 再通过 DOM 引用该文件并进行操作,这个机制使得该 API 相对安全一些,因为任何本地文件的获取都需要用户的人工参与。
以下例子使用该 API 打开一个本地文件并将文件内容显示在一个 div 容器中,我们甚至可以在 div 上加上 contentEditable 属性,用户可以直接编辑文件的内容,不过,该 API 并没有提供将文件内容写回本地文件的方法,因此你编辑的内容无法保存。
随着 JavaScript 引擎的效率在各大浏览器的显著提高,JavaScript 可以做越来越多的事,本地文件 API 的引入将让很多有趣的功能成为现实。尽管该 API 并非多么重大的技术革命,但它将拓展 Web 应用的视野,让 [...]
IETester目前最新的版本是2009年05月10日出来的v0.3.3,关于这个利器,大家都清楚。在0.3.的基础上做了以下改动。
1.Implemented “window.external” feature
2.Added transparency support for IE5.5
不过目前这个版本还不能工作在windows7上。
DebugBar是ie的firebug.能从各个不同的角度剖析Web页面内部的细节层面,给开发带来很大的便利.主要有以下功能:
1.查看网页DOM树,HTTP(S),网页javascript脚本函数归类展示.效验网页中的框架.网页属性的详细信息
2.提供网页源码与IE整理后代码的对比.
3.能在无需改变显示器分辨率的前提下用不同分辨率显示页面.并能对页面进行缩放.
4.功能对任意位置取色并将HEX码复制到剪贴板中便于保存.
5.可将当前页面截图通过邮箱发送出去.
另外同时这安装Ietester和companionjs配合使用将给web开发者带来更高的开发体验.
官方发布网址:http://www.my-debugbar.com/wiki/
companion.js是js调试工具
具体使用方法为:
1、先下载Companion.JS安装文件,然后安装。
2、下载安装Microsoft Script Debugger,如果您的机器已经安装过了就可以免过这一步。
3、打开IE菜单“工具”–“Internet选项”–“高级”,找到“禁用脚本调试(Internet Explorer)”和“禁用脚本调试(在Internet Explorer之外)”,将两个选项前面的对钩都去掉,然后重启IE。
4、在Ie中输入:http://www.my-debugbar.com/wiki/uploads/CompanionJS/dummy.htm,然后点击click me链接,如果左上角弹出一个小错误提示或下面控制台出现了错误信息提示,就说明您已经安装成功了。
提示:Microsoft Script Debugger 下载 Microsoft Script Debugger 有两个下载版本可用,请按您的操作系统选择相应的下载版本。
dbg10chs.exe 需要 Microsoft Windows 98 或 Millennium Edition [...]
之前的ie提示错误时很是诡异,几行几行的通常不准,而且找不到。现在如果打开的ie8的错误提示,它将提示你要不要调试,然后会自己定位到错误的那一行,很是爽呀。它的调试器在原来有ie developer toolbar的基础上升级来的吧。哈哈,再说一次,很爽。
jschat是一个用来画图的js库,支持饼状图,曲线图,柱状图,感觉还比较好用。想知道详情,那就点进去看呗