首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用无标记的GeoComplete

使用无标记的GeoComplete
EN

Stack Overflow用户
提问于 2016-06-21 22:46:40
回答 1查看 423关注 0票数 0

我使用这个插件自动完成位置输入字段。

到目前为止我所做的是-

代码语言:javascript
复制
$(function()
{
	$("#find_product_location").geocomplete(
	{
		map			: "#product_location",
		mapOptions	:
		{
			mapTypeId : 'roadmap',		//roadmap, satellite,hybrid, terrain,
			scrollwheel	: true,
			zoom: 10,
			center : new google.maps.LatLng(37.42152681633113, -119.27327880000001),
		},
		markerOptions:
		{
			draggable: true
		},
	})
		.bind("geocode:result", function(event, result)
		{
			console.log('Success');
			//console.log(result);
		})
		.bind("geocode:error", function(event, status)
		{
			console.log('Error');
			//console.log(status);
		})
		.bind("geocode:multiple", function(event, results)
		{
			console.log('Multiple');
			//console.log(results);
		});
});
代码语言:javascript
复制
#product_location
{ 
	width: 100%; 
	height: 400px;
}
代码语言:javascript
复制
<input id="find_product_location" type="text" placeholder="Type Your Address"/>
<input id="find" type="button" value="find" />

<div id="product_location"></div>

<script src="http://maps.googleapis.com/maps/api/js?sensor=true&amp;libraries=places"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/geocomplete/1.7.0/jquery.geocomplete.min.js"></script>

但问题是,当选择一个位置时,就会创建一个标记,并在地图中显示该标记。

我的要求是我不想要这个记号笔。

我只是想有其他功能(自动缩放,改变地图位置等)。

有人能帮忙吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-06-22 17:01:16

您可以使用官方的Google - Place Autocomplete自动完成是Google API中地名库的一个特性。您可以使用自动完成为您的应用程序类型提前搜索行为的谷歌地图搜索字段。当用户开始键入地址时,自动完成将填写其余的地址。

代码语言:javascript
复制
function initMap() {
  var map = new google.maps.Map(document.getElementById('map'), {
    center: {lat: -33.8688, lng: 151.2195},
    zoom: 13
  });
  var input = /** @type {!HTMLInputElement} */(
      document.getElementById('pac-input'));

  var types = document.getElementById('type-selector');
  map.controls[google.maps.ControlPosition.TOP_LEFT].push(input);
  map.controls[google.maps.ControlPosition.TOP_LEFT].push(types);

  var autocomplete = new google.maps.places.Autocomplete(input);
  autocomplete.bindTo('bounds', map);


    var address = '';
    if (place.address_components) {
      address = [
        (place.address_components[0] && place.address_components[0].short_name || ''),
        (place.address_components[1] && place.address_components[1].short_name || ''),
        (place.address_components[2] && place.address_components[2].short_name || '')
      ].join(' ');
    }

  });

  // Sets a listener on a radio button to change the filter type on Places
  // Autocomplete.
  function setupClickListener(id, types) {
    var radioButton = document.getElementById(id);
    radioButton.addEventListener('click', function() {
      autocomplete.setTypes(types);
    });
  }

  setupClickListener('changetype-all', []);
  setupClickListener('changetype-address', ['address']);
  setupClickListener('changetype-establishment', ['establishment']);
  setupClickListener('changetype-geocode', ['geocode']);
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37955817

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档