Добавление канцелярской кнопки на карту с помощью Javascript
Как я буду в состоянии поставить булавку, используя щелчок моей мыши? учитывая, что это код:
function AddPushpin()
{
var shape = new VEShape(VEShapeType.Pushpin, **map.GetCenter()**);
shape.SetTitle('sample');
shape.SetDescription('This is shape number '+pinid);
pinid++;
map.AddShape(shape);
}
это указывает на центр..
Есть ли у вас какие-либо идеи о том, как добавить изображение к кнопке?
2 ответа
Вот пример, который добавляет метку во время события OnClick карты и устанавливает URL-адрес фотографии Shape для отображения изображения в InfoxBox.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript" src="http://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.2&mkt=en-US"></script>
<script type="text/javascript">
var map = null;
function GetMap()
{
map = new VEMap("myMap");
map.LoadMap();
// Attach the OnClick event
map.AttachEvent("onclick", OnClick_Handler);
// You could Dettach the OnClick event like this
//map.DetachEvent("onclick", OnClick_Handler);
}
function OnClick_Handler(e){
// "sender" is the VEMap that raised the event
// "e" is the VE Map Event Object
// Get the Lat/Long where the Mouse was clicked
var pushpinLocation = map.PixelToLatLong(new VEPixel(e.mapX, e.mapY));
// Create the Pushpin Shape
var s = new VEShape(VEShapeType.Pushpin, pushpinLocation);
s.SetTitle("test pushpin");
s.SetDescription("test description");
s.SetPhotoURL("http://i.stackru.com/Content/Img/stackru-logo-250.png");
// Plot a Shape at the Clicked location
map.AddShape(s);
}
</script>
</head>
<body onload="GetMap();">
<div id='myMap' style="position:relative; width:400px; height:400px;"></div>
</body>
</html>
Проверить эту статью...
function InitMap ()
{
// add code to init your map....
// attach the onclick event...
map.AttachEvent("onclick", MouseClick);
}
function MouseClick(e)
{
map.AddPushpin('pin',
e.view.latlong.latitude,
e.view.latlong.longitude,
88,
34,
'pin',
'MyPin',
1);
}