//YOLP操作のためのJavaScriptインターフェースオブジェクト var YOLPSL; //YOLP地図オブジェクト(Mapオブジェクト) var ymap; ///(カセットを含む)YOLPSLロード完了イベント /// map:YOLP地図オブジェクト /// cassettes:カセットオブジェクトのディクショナリ(キーはカセット名) function onLoadComplete(map, cassettes) { ymap = map; var slPlugin = document.getElementById("slPlugin"); if (!slPlugin || !slPlugin.Content) { return; } YOLPSL = slPlugin.Content.jsInterface; var SliderZoomControlHorizontal = YOLPSL.CreateInstance("SliderZoomControlHorizontal"); ymap.AddControl(SliderZoomControlHorizontal); var LayerSetControl = YOLPSL.CreateInstance("LayerSetControl"); ymap.AddControl(LayerSetControl); //GeoXmlLayerを定義します。 var geoxmllayer = YOLPSL.CreateInstanceWithArgs("GeoXmlLayer","ydflayer"); //GeoXmlLayer.Execute()時の処理を定義します。 geoxmllayer.addEventListener("ExecuteCallback",function(sender,response){ var len = response.Ydf.Features.length; alert(len + "件の地物があります。"); for (var i=0; i<len; i++) { var p = response.Ydf.Features[i].GetLatLng(); if (p) { ymap.PanTo(p,true); break; } } }); document.getElementById("addlayer").onclick = function() { //GeoXmlLayerを追加します。 ymap.AddLayer(geoxmllayer); //YDFファイルの読み込みを実行し、地図上に描画します。 geoxmllayer.Execute("http://map.yahooapis.jp/OpenLocalPlatform/V1/jsapi/example.ydf"); } document.getElementById("removelayer").onclick = function() { //GeoXmlLayerを削除します。 ymap.RemoveLayer(geoxmllayer); } }