我使用
在地图上制作了一些标记L.marker([42.76, 20.52], 5, {color: "blue"}).addTo(map).bindPopup("<b>Name: </b> My name<br /><b>Adress:</b> My adress<br /> <b>Description:</b>My description...").on("click", circleClick);
我的circleClick功能如下:
function circleClick(e) {
app.getInfo(e.latlng.lat, e.latlng.lng);;}
我使用此功能将坐标从JavaScript
发送到Java
。但现在我想在我的circleClick
函数中添加一些参数。这不是问题,我知道如何做到这一点。但我不知道如何使用参数调用该函数。我试过了:
L.marker([42.76, 20.52],[...]).on("click", circleClick(e, parameter1, parameter2));
但它不起作用。请帮助我,如何在.on("click", circleClick(...));
指定参数?
答案 0 :(得分:1)
如果您不介意参数的顺序,可以bind来添加参数:
.on("click", circleClick.bind(null, parameter1, parameter2));
它会创建前置parameter1
,parameter2
的函数,以便调用回调,如circleClick(parameter1, parameter2, e)
答案 1 :(得分:1)
L.marker([42.76, 20.52],[...]).on("click", function(e) {
circleClick(e, parameter1, parameter2);
});
来自jquery doc:
The handler argument is a function (or the value false, see below), and is required unless you pass an object for the events argument.
您正在做的是在on()
方法中调用函数而不指定处理程序。