javascript - Bing map 单击 Pin 上的事件

标签 javascript onclick bing-maps

如何为 pin 上的点击事件设置回调函数? 我需要绿色的针脚(一个位置)和红色的针脚(集群位置)。 我正在使用 v6 api。

这是目前的代码:

var shape = new VEShape(VEShapeType.Pushpin, new VELatLong(pin.position.lat, pin.position.lng));
shape.SetTitle('<h2>'+pin.overlay.headline+'</h2>');
shape.SetDescription('<p>'+pin.overlay.text+'</p>');

var pinIcon = new VECustomIconSpecification();
pinIcon.Image = '/images/map/pin.png';
pinIcon.TextContent = '.';
shape.SetCustomIcon(pinIcon);

最佳答案

正确的做法是覆盖 onclick 和 onmouseover VEMap.AttachEvent() 中的函数; AttachEvent 有很多返回值 有助于识别您单击/鼠标悬停的引脚,例如 pinID(VEMap.onclick() 方法的 elementID 返回值)。

您可以将 ID 与 map.ShowInfoBox() 和 map.GetShapeByID 结合使用以 点击后显示您的信息框。

阅读:VEMap.AttachEvent <-- Google,我会粘贴 URL,但我需要更多关于 StackOverflow 的代表

阅读:VEMap.onclick。另外,了解返回值:

读取所有鼠标事件 http://msdn.microsoft.com/en-us/library/bb412438.aspx

/*************************************
 * Code snippets..
 * For example purposes I'm going to do 
 * things a bit out of order.
*************************************/

// Attach your events in the map load callback:
map.AttachEvent("onmouseover", myFnForMouseOver);
map.AttachEvent("onclick", myFnForOnClick);


// Callback functions used in the AttachEvent(s) above..
function myFnForMouseOver(e){
    if(e.elementID){
        return true; // Disables the rollover ShowInfoBox()
    }
}

function myFnForOnClick(e){
    if(e.elementID){
        // Show infobox using the PINs/Shapes actual ID, (return value from e.elementID)
        map.ShowInfoBox(map.GetShapeByID(e.elementID)); 
        return true;
    }
}

/*
 * end 
 */

就是这样

  • 贝克

关于javascript - Bing map 单击 Pin 上的事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5070181/

相关文章:

javascript - 更改图像 src 时 jQuery 悬停进出淡入淡出过渡

javascript - 手机版网站滑动功能

ajax - 使用 AJAX 控件的 v7 限制 Bing map 的最小/最大缩放?

javascript - 为什么这个表达式总是错误的?

javascript - 尝试连接时取消 WebSocket 连接 (JavaScript)

php - 点击确认框终止 php 表单操作

javascript - 在选择时模拟点击事件(不适用于 IE 和 FF)

javascript - 重复 javascript 函数 onclick

maps - 如何检测 Microsoft Bing map 中的缩放变化

c# - 启动 Bing map 时应使用哪个 API