次の例では、ウィジットのz-indexを変更して表示順を変更します。
ウィジットの表示順を変更するには、各ウィジットクラスのsetZindex()を利用します。デフォルトは100です。
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=EUC-JP"> <script src="//api.its-mo.com/v3/webgl-loader?key=JSZddc5111626c8|Zo4wz&ver=bldg_w_tex&api=webgl.js&enc=EUC&force=1" type="text/javascript"></script> <script type="text/javascript"> "use strict"; var map, objects={}, lat = 35.66297325982054, lon = 139.76598186955528, zindx = 100; function loadMap() { map = new ZDC.Map( document.getElementById('ZMap'), { latlon: new ZDC.LatLon(lat, lon), zoom: 14.5, heading: 155, tilt: 70 } ); /* スケールバーを作成 */ var scale = new ZDC.ScaleBar(); /* スケールバーを表示 */ map.addWidget(scale); /* 多角形の頂点を作成 */ var latlons = []; latlons.push(new ZDC.LatLon(lat, lon)); latlons.push(new ZDC.LatLon(35.66397325982054, 139.76648186955528)); latlons.push(new ZDC.LatLon(35.66197325982054, 139.76698186955528)); /* 線を作成。closePath:trueで多角形になる */ var pg = new ZDC.Polyline( latlons, { strokeColor: '#00FF00', strokeWeight: '2', fillColor: '#FF00FF', closePath: true }); /* 多角形を地図に追加 */ map.addWidget(pg); objects.pg = pg; /* 円を作成 */ var ov = new ZDC.Oval( { latlon: new ZDC.LatLon(lat, lon), x: 100, y: 100 }, { strokeColor: '#00FF00', strokeWeight: '2', fillColor: '#FF0000', circle: true }); /* 円を地図に追加 */ map.addWidget(ov); objects.ov = ov; /* マーカを作成 */ var mrk1 = new ZDC.Marker(new ZDC.LatLon(lat, lon), { color: ZDC.MARKER_COLOR_ID_GRAY_L, number: ZDC.MARKER_NUMBER_ID_1_L }); map.addWidget(mrk1); objects.mrk1 = mrk1; /* マーカを作成 */ var mrk2 = new ZDC.Marker(new ZDC.LatLon(lat, lon), { color: ZDC.MARKER_COLOR_ID_YELLOW_L, number: ZDC.MARKER_NUMBER_ID_2_L }); map.addWidget(mrk2); objects.mrk2 = mrk2; /* ユーザウィジットを表示 */ var widget1label = { html: '<div style="background-color: #FFFFFF"><b><font color="#FF0000">Sample Widget1</font></b></div>', size: new ZDC.WH(110, 40) }; var widget1 = new ZDC.UserWidget(new ZDC.LatLon(lat, lon), widget1label); map.addWidget(widget1); widget1.open(); objects.widget1 = widget1; var widget2label = { html: '<div style="background-color: #FFFFFF"><b>Sample Widget2</b></div>', size: new ZDC.WH(110, 40) }; var widget2 = new ZDC.UserWidget(new ZDC.LatLon(lat, lon), widget2label); map.addWidget(widget2); widget2.open(); objects.widget2 = widget2; /* 吹き出しを表示 */ var msginfo1 = new ZDC.MsgInfo(new ZDC.LatLon(lat, lon), {html: 'Sample MsgInfo1'}); map.addWidget(msginfo1); msginfo1.open(); objects.msginfo1 = msginfo1; /* 吹き出しを表示 */ var msginfo2 = new ZDC.MsgInfo(new ZDC.LatLon(lat, lon), {html: 'Sample MsgInfo2'}); map.addWidget(msginfo2); msginfo2.open(); objects.msginfo2 = msginfo2; } /* マーカのz-indexを変更する */ function chg_zindex(key) { zindx++; objects[key].setZindex(zindx); }; </script> </head> <body onload="loadMap();"> <div id="ZMap" style="border:1px solid #777777; width:750px; height:500px; top:0px; left:20px; position:absolute;"></div> <div id="IBox" style="top:510px; left:20px; position:absolute;"> <input type="button" value="マーカ1を上にする" onclick="chg_zindex('mrk1');"><br> <input type="button" value="マーカ2を上にする" onclick="chg_zindex('mrk2');"><br> <input type="button" value="吹き出し1を上にする" onclick="chg_zindex('msginfo1');"><br> <input type="button" value="吹き出し2を上にする" onclick="chg_zindex('msginfo2');"><br> <input type="button" value="ユーザウィジット1を上にする" onclick="chg_zindex('widget1');"><br> <input type="button" value="ユーザウィジット2を上にする" onclick="chg_zindex('widget2');"><br> <input type="button" value="多角形を上にする" onclick="chg_zindex('pg');"><br> <input type="button" value="円を上にする" onclick="chg_zindex('ov');"> </div> </body> </html>