http://openlayers.org/dev/examples/sundials.htmlの例のように、マップに既にロードされているKMLを再解析 し、クリック可能なリストに変換して、マップを中央に配置します。ポイントクリックして、ポップアップウィンドウを表示します。
これはGoogleマップで行うのは本当に簡単でしたが、同様のOpenlayersの例は見つかりませんでした。これを行う簡単な方法はありますか?私が見逃している組み込みのものはありますか?
HTML:
<ul id="locationTable">
</ul>
JS:
htmlRows = "";
for(var feat in features) {
// Build details table
featId = features[feat].id; // determine the feature ID
title = jQuery(f).filter('[name=TITLE]').text();
htmlRow = "<li><a href="javascript:selectFeature('"+featId+"');\">"+title+"</a></li>";
htmlRows = htmlRows + htmlRow;
}
jQuery('#locationTable').append(htmlRows);
そして、selectFeature関数の場合:
function selectFeature(fid) {
for(var i = 0; i<kml.features.length;++i) {
if (kml.features[i].id == fid)
{
selected = new OpenLayers.Control.SelectFeature(kml.features[i]);
selected.clickFeature(); // make call to simulate Click event of feature
break;
}
}
}