[Leaflet]按下按钮时显示标记

时间:2015-01-15 22:31:53

标签: javascript html leaflet

早上好, 我想问一些事情。

这是我的代码

<script>
        var gotocountry = function(c){
         if(c=='a')
         map.setView(new L.LatLng(14.6985021,121.0327683), 15);
         L.marker([14.6985021,121.0327683]).addTo(map).bindPopup("<b>Barangay</b><br />BagBag.");
         if(c=='b')
         map.setView(new L.LatLng(14.7078854,121.0337225), 15);
          L.marker([14.7078854,121.0337225]).addTo(map).bindPopup("<b>Barangay</b><br />San Bartolome.");
         if(c=='c')
         map.setView(new L.LatLng(14.7164893,121.0282256), 20);
          L.marker([14.7164893,121.0282256]).addTo(map).bindPopup("<b>Barangay</b><br />Capri.");
         if(c=='d')
         map.setView(new L.LatLng(14.7321658,121.0351128), 15);
          L.marker([14.7321658,121.0351128]).addTo(map).bindPopup("<b>Barangay</b><br />San Agustin.");
         if(c=='e')
         map.setView(new L.LatLng(14.7180246,121.0502252), 15);
          L.marker([14.7180246,121.0502252]).addTo(map).bindPopup("<b>Barangay</b><br />Santa Monica.");
         if(c=='f')
         map.setView(new L.LatLng(14.7062652,121.0514161), 15);
          L.marker([14.7062652,121.0514161]).addTo(map).bindPopup("<b>Barangay</b><br /> Santa Lucia.");
         if(c=='g')
         map.setView(new L.LatLng(14.7186298,121.0249991),14);
          L.marker([14.7186298,121.0249991]).addTo(map).bindPopup("<b>Barangay</b><br />Nagkaisang Nayon.");
         if(c=='h')
         map.setView(new L.LatLng(14.7337011,121.0452979), 15);
          L.marker([14.7337011,121.0452979]).addTo(map).bindPopup("<b>Barangay</b><br />Kaligayahan.");
         if(c=='i')
         map.setView(new L.LatLng(14.725304,121.0601789), 15);
          L.marker([14.725304,121.0601789]).addTo(map).bindPopup("<b>Barangay</b><br />Greater Lagro.");
         if(c=='j')
         map.setView(new L.LatLng(14.7022463,121.0705127), 15);
          L.marker([14.7022463,121.0705127]).addTo(map).bindPopup("<b>Barangay</b><br />Fairview.");
         if(c=='k')
         map.setView(new L.LatLng(14.7135057,121.0620537), 15);
          L.marker([14.7135057,121.0620537]).addTo(map).bindPopup("<b>Barangay</b><br />North Fairview.");
         if(c=='l')
         map.setView(new L.LatLng(14.7205414,121.0493454), 15);
          L.marker([14.7205414,121.0493454]).addTo(map).bindPopup("<b>Barangay</b><br />Pasong Putik Proper.");
         if(c=='m')
         map.setView(new L.LatLng(14.7204713,121.037608), 15);
          L.marker([14.7204713,121.037608]).addTo(map).bindPopup("<b>Barangay</b><br />Nova Proper.");
         if(c=='n')
         map.setView(new L.LatLng(14.7117262,121.0402688), 15);
          L.marker([14.7117262,121.0402688]).addTo(map).bindPopup("<b>Barangay</b><br />Gulod.");
         if(c=='o')
         map.setView(new L.LatLng(11.6978351,122.6217542), 15);
          L.marker([11.6978351,122.6217542]).addTo(map).bindPopup("<b>Barangay</b><br />BagBag.");
        return;


      };
        </script>

上面的代码将转到某个国家/地区,并在点击按钮时显示其标记,但我的问题是,当我点击该地图上的按钮时,会显示标记+自动显示弹出,其余部分则不会。< / p>

简单问题:如果c == a那么Lat / Long将显示标记并自动显示其弹出窗口。

求助

1 个答案:

答案 0 :(得分:0)

看起来你需要一些花括号......

if(c=='a'){
     map.setView(new L.LatLng(14.6985021,121.0327683), 15);
     L.marker([14.6985021,121.0327683]).addTo(map).bindPopup("<b>Barangay</b><br />BagBag.");
}
if(c=='b'){
     map.setView(new L.LatLng(14.7078854,121.0337225), 15);
     L.marker([14.7078854,121.0337225]).addTo(map).bindPopup("<b>Barangay</b><br />San Bartolome.");
}