我有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/