我有一张传单地图,里面有很多标记,我想要的是打开地图旁边的图像,该图像链接到标记点击上的某个标记。我只知道我需要javascript / jquery和ajax来完成这项工作。
以下是一个示例:http://www.washingtonpost.com/wp-srv/special/local/14th-street-businesses/
任何提示/提示/教程表示赞赏。 提前谢谢!
答案 0 :(得分:0)
以下是您问题的解决方案:http://franceimage.github.io/leaflet/10/
var selectedMarker = false;
var geojsonMarkerOptions = {
radius: 8,
fillColor: "#ff7800",
color: "#000",
weight: 1,
opacity: 1,
fillOpacity: 0.8
};
L.geoJson(fi_markers, {
pointToLayer: function (feature, latlng) {
var marker = L.circleMarker(latlng, geojsonMarkerOptions);
marker.on('click', function (e) {
var feature = e.target.feature;
var content = '<h3>' + feature.properties.popupContent + '</h3><a href="http://www.franceimage.com/en/places-to-visit/?p=' + feature.properties.id + '">' + feature.properties.thumbnail + '</a>';
document.getElementById("events").innerHTML = content;
if(selectedMarker != false) {
selectedMarker.setStyle({ fillColor: "#ff7800"});
}
marker.setStyle({ fillColor: "#000000"});
selectedMarker = marker;
});
return marker;
}
}).addTo(map);
这种方式你可以做到(还有很多其他的)
在这个例子中:
没有ajax调用(也没有jquery)。数据从geoJson结构加载(查看http://franceimage.github.io/leaflet/10/data.geojson)
弹出窗口的html内容是使用geojson功能的属性创建的
我使用过CircleMarker,因此改变颜色是小菜一碟
我希望这会有所帮助