返回介绍

saber-geo v0.1.0

发布于 2023-10-15 20:10:06 字数 3900 浏览 0 评论 0 收藏 0

saber-geo Build Status

适合移动端的 GeoLocation 封装

Usage

通过edp引入模块:

edp import saber-geo

简单使用示例:

require( [ 'saber-geo' ], function( Geo ) {

	function onSuccess( position ) {
    	var coords = position.coords;
       	console.log( 'latitude,longitude: ', coords.latitude, coords.longitude);
    }
    
    function onError( error ) {
    	console.log( 'Error: ', error.code, error.message );
    }
	
	// 一次性获取
	Geo.get( onSuccess, onError );
    
    // 持续性获取
    var watchId = Geo.watch( onSuccess, onError );
    
    // 停止获取
    Geo.clear( watchId );

});

API

Base

Base 部分是标准的 HTML5 Geolocation API 封装,在 require( 'saber-geo' ) 时加载。

.get( onSuccess[, onError, options] )

一次性获取当前地理位置信息

Geo.get(
	function ( position ) {
    	console.info( 'Position: ', position );
	},
	function ( error ) {
		console.error( 'Error: ', error );
	}
);
  • onSuccess {Function} 成功回调,参数参考Position
  • onError {Function=} 错误回调,参数参考PositionError
  • options {Object=} 配置对象
    • highAcuracy {boolean=} 是否使用高精度
    • timeout {number=} 超时时长,单位毫秒
    • age {number=} 数据缓存时间,单位毫秒,为0时每次都执行新的检索

.watch( onSuccess[, onError, options] )

持续性获取当前地理位置信息

Geo.watch(
	function ( position ) {
    	console.info( 'Position: ', position );
	},
	function ( error ) {
		console.error( 'Error: ', error );
	},
	{ timeout: 20000, age: 10000 }
);
  • onSuccess {Function} 成功回调,参数参考Position
  • onError {Function=} 错误回调,参数参考PositionError
  • options {Object=} 配置对象
    • highAcuracy {boolean=} 是否使用高精度
    • timeout {number=} 超时时长,单位毫秒
    • age {number=} 数据缓存时间,单位毫秒,为0时每次都执行新的检索

.clear( watchId )

停止指定的位置监控。

var watchId = Geo.watch( ... );
Geo.clear( watchId );
  • watchId {number} watch方法返回的watchId

IP

在线IP查询服务的扩展支持,需以 require( 'saber-geo/ip' ) 引入。

.callback

查询请求(JSOP)附带的callback参数的键值,默认为callback

.provider

查询服务的JSONP服务地址,默认为http://hendless.duapp.com/addr

.find( callback )

查询当前IP信息

require( [ 'saber-geo/ip' ], function( IP ) {
	IP.find( function () {
    	console.info( 'IP Info: ', arguments );
	});
});

===

Saber

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文