こんにちは!
OpenLayers マップのすべてのマーカーに一意の (css-) クラスを追加したいのですが、方法がわかりません! 私はほとんどすべてを試し、この質問を OpenStreetMapのフォーラムにも投稿しました(向こうの人たちは OpenLayers にかなり精通しているため)。
これは、マーカーを追加するために私が書いた関数です:
function ownMarker(lon,lat,icon,markerid) {
var size = 新しい OpenLayers.Size(38,58);
var offset = new OpenLayers.Pixel(-(size.w/2), -size.h);
var element = new OpenLayers.Element.addClass('div', 'test');
var icon = new OpenLayers.Icon('images/marker/'+ icon +'.png', size, offset);
var マーカー = 新しい OpenLayers.Marker((新しい OpenLayers.LonLat(lon, lat).transform(proj4326, projmerc)),icon)
マーカー.id = マーカーID;
marker.events.register("mousedown", マーカー, function() {
if(this.id != 'ホーム') {
currentID = this.id;
$('.activeResult').removeClass('activeResult');
$('#results a[href$=' + this.id + ']').addClass("activeResult");
showContent($(".nav a:first-child").attr("href"));
$(".nav a:first-child").addClass("activeContent")
if(contentOpen == false){
$("#container").show();
$(".frame").animate({左: 0});
contentOpen = true;
}
tempLatitude = $('#results a[href$=' + this.id + ']').attr("lat");
tempLongitude = $('#results a[href$=' + this.id + ']').attr("lon");
targetLatitude = $('#results a[href$=' + this.id + ']').attr("lat");
targetLongitude = $('#results a[href$=' + this.id + ']').attr("lon");
ownPanTo(tempLongitude, tempLatitude);
console.log(this.id);
}
});
マーカー.addMarker(マーカー);
}
5行目でわかるように、私はすでにクラスをマーカーに追加しようとしましたが、成功しませんでした!
私を助けてください!:)
乾杯!