我有2个函数addData()
和diplayInfoBox(e)
,在addData内部我有一个点击处理程序,我需要在点击时获取一些事件详细信息,以便事件作为 displayInfoBox
的参数是必需的,我还需要将另一条信息传递到 displayInfoBox
中,但我不确定如何在事件存在的情况下执行此操作。如果我这样做 displayInfoBox(e, pin)
这不起作用。谁能建议我需要做什么来解决这个问题?
JSFiddle http://jsfiddle.net/kyllle/upej8/7/
JS
addData: function() {
//code
//click handler
Microsoft.Maps.Events.addHandler(pin, 'click', instance.displayInfoBox); //need to be able to pass variable pin to displayInfoBox
},
displayInfoBox: function(e) { //need to accept additional param for pin
}
最佳答案
尝试
Microsoft.Maps.Events.addHandler(pin, 'click', function(e){instance.displayInfoBox(e, pin);});
因此,您基本上调用了一个匿名函数 onclick,该函数又调用您的函数,传入您想要的任何参数 - 请记住也包括事件(在本例中为“e”)
关于javascript - 如果事件也需要作为参数,如何将参数传递给函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15664223/