У меня проблема в Google Map API для отображения значка SVG - PullRequest
0 голосов
/ 07 сентября 2018

Вы можете иметь значки доступа, как здесь

gicons["Saint-Paul"] = new GIcon(baseIcon, "http://www.tco.re/wp-content/uploads/2017/01/stpaul.png");
gicons["Trois Bassins"] = new GIcon(baseIcon, "http://www.tco.re/wp-content/uploads/2017/01/troisb.png");
gicons["Le Port"]  = new GIcon(baseIcon, "http://www.tco.re/wp-content/uploads/2017/01/leport.png");
gicons["Saint-Leu"]  = new GIcon(baseIcon, "http://www.tco.re/wp-content/uploads/2017/01/stleu.png");
gicons["La Possession"]  = new GIcon(baseIcon, "http://www.tco.re/wp-content/uploads/2017/01/possession.png");





<!DOCTYPE html>
<html>


 <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">

<!-- SEO méta-->
<title>Carte interactive | TCO &#8211; Communauté d&#039;agglomération du Territoire de la Côte Ouest (TCO) &#8211; La Réunion</title>
<meta http-equiv="Content-language" content="fr-FR" />
<meta http-equiv="Expires" content="0" />
<meta name="date-creation-yyyymmdd" content="20030101" />
<meta name="distribution" content="Global" />
<meta name="copyright" content="Communauté d'agglomération " />
<!--[if IE]>
<meta http-equiv="imagetoolbar" content="no" />
<![endif]-->
<!-- SEO méta END-->
    <!-- Facebook Méta start-->
    <meta property="og:title" content="Carte interactive" />
        <meta property="og:description " content="" />    
    <meta property="og:type" content="website" />
    <meta property="og:url" content="http://www.tco.re/carte-interactive" />
        <!-- Facebook Méta END-->       
    <!-- Fav Icone -->
    <link rel="shortcut icon" type="image/ico" href="http://www.tco.re/favicon.ico">
     <script src="fontawesome.js"></script>
    <!-- WP Head  -->
    <link rel='dns-prefetch' href='//s.w.org' />
<link rel='stylesheet' id='iphorm-css'  href='http://www.tco.re/wp-content/plugins/iphorm-form-builder/css/styles.css?ver=1.10.0' type='text/css' media='all' />
<link rel='stylesheet' id='qtip-css'  href='http://www.tco.re/wp-content/plugins/iphorm-form-builder/js/qtip2/jquery.qtip.min.css?ver=2.2.1' type='text/css' media='all' />
<link rel='stylesheet' id='iphorm-fancybox-css'  href='http://www.tco.re/wp-content/plugins/iphorm-form-builder/js/fancybox/jquery.fancybox-1.3.4.css?ver=1.3.4' type='text/css' media='all' />
<link rel='stylesheet' id='iphorm-uniform-theme-26-css'  href='http://www.tco.re/wp-content/plugins/iphorm-form-builder/js/uniform/themes/aristo/aristo.css?ver=1.10.0' type='text/css' media='all' />
<link rel='stylesheet' id='iphorm-uniform-theme-76-css'  href='http://www.tco.re/wp-content/plugins/iphorm-form-builder/js/uniform/themes/default/default.css?ver=1.10.0' type='text/css' media='all' />
<link rel='stylesheet' id='iphorm-theme-26-css'  href='http://www.tco.re/wp-content/plugins/iphorm-form-builder/themes/light/rounded.css?ver=1.10.0' type='text/css' media='all' />
<link rel='stylesheet' id='iphorm-theme-76-css'  href='http://www.tco.re/wp-content/plugins/iphorm-form-builder/themes/react/default.css?ver=1.10.0' type='text/css' media='all' />
<link rel='stylesheet' id='wp-pagenavi-css'  href='http://www.tco.re/wp-content/plugins/wp-pagenavi/pagenavi-css.css?ver=2.70' type='text/css' media='all' />
<link rel='stylesheet' id='bootstrap-css'  href='http://www.tco.re/wp-content/themes/TCO2017/css/bootstrap.min.css?ver=1.0' type='text/css' media='all' />
<link rel='stylesheet' id='material-style-css'  href='http://www.tco.re/wp-content/themes/TCO2017/css/mdb.css?ver=1.0' type='text/css' media='all' />
<link rel='stylesheet' id='tco-style-css'  href='http://www.tco.re/wp-content/themes/TCO2017/style.css?ver=1536296999' type='text/css' media='all' />
<link rel='stylesheet' id='lightbox-css'  href='http://www.tco.re/wp-content/themes/TCO2017/css/lightbox.css?ver=1.0' type='text/css' media='all' />
<script type='text/javascript' src='http://www.tco.re/wp-includes/js/jquery/jquery.js?ver=1.12.4'></script>
<script type='text/javascript' src='http://www.tco.re/wp-includes/js/jquery/jquery-migrate.min.js?ver=1.4.1'></script>
<script type='text/javascript' src='http://www.tco.re/wp-content/plugins/iphorm-form-builder/js/iphorm.js?ver=1.10.0'></script>
<script type='text/javascript' src='http://www.tco.re/wp-content/themes/TCO2017/js/lightbox.js?ver=4.9.7'></script>
<script type='text/javascript'>
/* <![CDATA[ */
var aamLocal = {"nonce":"5a89b49e3e","ajaxurl":"http:\/\/www.tco.re\/wp-admin\/admin-ajax.php"};
/* ]]> */
</script>
<script type='text/javascript' src='//www.tco.re/wp-content/plugins/advanced-access-manager/media/js/aam-login.js?ver=4.9.7'></script>
<link rel="canonical" href="http://www.tco.re/carte-interactive" />
<link rel='shortlink' href='http://www.tco.re/?p=13193' />
    <!-- ./ WP Head  -->
    <!-- Auto complete recherche calendrier  -->
    <!-- Fonts fontawesome -->

<meta name="google-site-verification" content="6tLjT1eov4By1rkS7rJVu68WRqbiaw0Up-qEHxOQ4Oo" />

</head>
 <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;sensor=false&amp;key=YOUR_API_KE" type="text/javascript"></script>
<style type="text/css">
.container_map{
  width: 100%;
  margin: 0 auto;

}

#map_container{
  position: relative;
}
#map{
    height: 0;
    min-height:600px;
    overflow: hidden;
    padding-bottom: 22.25%;
    padding-top: 30px;
    position: relative;
}
</style>

<!--Main-->
<main>
  <!--Couleur de fond-->
  <div class="tco-gris">
    <!--Container-->
    <div class="container">

      <!--Row 1-->
      <div class="row">
        <!--Breadcrumbs column-->
        <div class="col-md-12">
          <?php if(function_exists('bcn_display')): bcn_display();endif;?>                
        </div>
        <!--/.Breadcrumbs column-->
      </div>
      <!--/.Row 1-->
        <!--Row 2 -->
        <div class="row">
          <!--Post col 8 Gauche-->
          <div class="col-md-12">

               <h1 class="h1-responsive"></h1>
               <hr>

<form class="form-inline">


  <!--Card CONTENU-->

      <fieldset class="form-group">
               <input type="checkbox" id="Saint-Paulbox" onclick="boxclick(this,'Saint-Paul')" />
                <label for="Saint-Paulbox">Saint-Paul:</label>
      </fieldset>

          <fieldset class="form-group">
              <input type="checkbox" id="Trois Bassinsbox" onclick="boxclick(this,'Trois Bassins')" />
                <label for="Trois Bassinsbox">Trois Bassins:</label>
      </fieldset>

            <fieldset class="form-group">
               <input type="checkbox" id="Le Portbox" onclick="boxclick(this,'Le Port')" />
                <label for="Le Portbox">Le Port:</label>
      </fieldset>

            <fieldset class="form-group">
               <input type="checkbox" id="La Possessionbox" onclick="boxclick(this,'La Possession')" />
                <label for="La Possessionbox">La Possession:</label>
      </fieldset>

            <fieldset class="form-group">
              <input type="checkbox" id="Saint-Leubox" onclick="boxclick(this,'Saint-Leu')" />
                <label for="Saint-Leubox">Saint-Leu:</label>
      </fieldset>

    </form> 
         <hr>
        <!-- you can use tables or divs for the overall layout -->
    <table width="100%" >
      <tr>
        <td valign="top" >
            <div class="container_map">


      <div id="map"></div>
    </div>  
        </td>
        <td width = "20%" align="right" valign="top" style="text-decoration: underline; color: #4444ff;">
           <div id="side_bar"  style="overflow:auto; height:600px;"></div>
        </td>
      </tr>
    </table>

    <noscript><b>JavaScript must be enabled in order for you to use Google Maps.</b> 
      However, it seems JavaScript is either disabled or not supported by your browser. 
      To view Google Maps, enable JavaScript by changing your browser options, and then 
      try again.
    </noscript>


    <script type="text/javascript">
    //<![CDATA[

    if (GBrowserIsCompatible()) {
      var gmarkers = [];
      var gicons = [];



    var baseIcon = new GIcon(G_DEFAULT_ICON);
        baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
        baseIcon.iconSize = new GSize(20, 34);
        baseIcon.shadowSize = new GSize(37, 34);
        baseIcon.iconAnchor = new GPoint(9, 34);
        baseIcon.infoWindowAnchor = new GPoint(9, 2);
        baseIcon.infoShadowAnchor = new GPoint(18, 14);


      gicons["Saint-Paul"] = new GIcon(baseIcon, "stpaul.svg");
      gicons["Trois Bassins"] = new GIcon(baseIcon, "troisb.svg");
      gicons["Le Port"]  = new GIcon(baseIcon, "leport.svg");
      gicons["Saint-Leu"]  = new GIcon(baseIcon, "stleu.svg");
      gicons["La Possession"]  = new GIcon(baseIcon, "possession.svg");

      // A function to create the marker and set up the event window
      function createMarker(point,name,html,category/*,nom_rue*/) {
        var marker = new GMarker(point,gicons[category]);
        // === Store the category and name info as a marker properties ===
        //marker.mynom_rue = nom_rue;
        marker.mycategory = category;                                 
        marker.myname = name;
        GEvent.addListener(marker, "click", function() {
          marker.openInfoWindowHtml(html);
        });
        gmarkers.push(marker);
        return marker;
      }

      // == shows all markers of a particular category, and ensures the checkbox is checked ==
      function show(category) {
        for (var i=0; i<gmarkers.length; i++) {
          if (gmarkers[i].mycategory == category) {
            gmarkers[i].show();
          }
        }
        // == check the checkbox ==
        document.getElementById(category+"box").checked = true;
      }

      // == hides all markers of a particular category, and ensures the checkbox is cleared ==
      function hide(category) {
        for (var i=0; i<gmarkers.length; i++) {
          if (gmarkers[i].mycategory == category) {
            gmarkers[i].hide();
          }
        }
        // == clear the checkbox ==
        document.getElementById(category+"box").checked = false;
        // == close the info window, in case its open on a marker that we just hid
        map.closeInfoWindow();
      }

      // == a checkbox has been clicked ==
      function boxclick(box,category) {
        if (box.checked) {
          show(category);
        } else {
          hide(category);
        }
        // == rebuild the side bar
        makeSidebar();
      }

      function myclick(i) {
        GEvent.trigger(gmarkers[i],"click");
      }
      // == rebuilds the sidebar to match the markers currently displayed ==
      function makeSidebar() {
        var html = '<div class="list-group">';
        for (var i=0; i<gmarkers.length; i++) {
          if (!gmarkers[i].isHidden()) {
            html += '<a class="list-group-item" href="javascript:myclick(' + i + ')">' + gmarkers[i].myname + '<\/a>';
          }
        }
        document.getElementById("side_bar").innerHTML = html;
      }


      // create the map
      var map = new GMap2(document.getElementById("map"));
      map.addControl(new GLargeMapControl());
      map.addControl(new GMapTypeControl());
      map.setCenter(new GLatLng(-21.046781,55.2856521), 11);


      // Read the data
      GDownloadUrl("jason4.php.xml", function(doc) {
        var xmlDoc = GXml.parse(doc);
        var markers = xmlDoc.documentElement.getElementsByTagName("marker");

        for (var i = 0; i < markers.length; i++) {
          // obtain the attribues of each marker
            var lat = parseFloat(markers[i].getAttribute("lat"));
            var lng = parseFloat(markers[i].getAttribute("lng"));
            var point = new GLatLng(lat,lng);
            var html = markers[i].getAttribute("html");
            var label = markers[i].getAttribute("label");
          var category = markers[i].getAttribute("category");
          //var nom_rue = markers[i].getAttribute("nom_rue");
          // create the marker
          var marker = createMarker(point,label,html,category);//nom_rue
          map.addOverlay(marker);
        }

        // == show or hide the categories initially ==
        hide("Saint-Paul");
        hide("Trois Bassins");
        hide("Le Port");
        hide("Saint-Leu");
        hide("La Possession");
        // == create the initial sidebar ==
        makeSidebar();
      });
    }
    else {
      alert("Sorry, the Google Maps API is not compatible with this browser");
    }
    // This Javascript is based on code provided by the
    // Community Church Javascript Team
    // http://www.bisphamchurch.org.uk/   
    // http://econym.org.uk/gmap/
    //]]>
    </script>

<!--header-->
  <!--Card CONTENU-->  
      </div>
      <!--/.Post col 8 Gauche-->
    </div>
    <!--/.Row 2 -->
   </div>
   <!--/.Container-->
 </div>
 <!-- /.Couleur de fond-->
</main>
<!--/.Main-->
<!-- page-delibe-conseil -->
<!--footer-->
<!--
</html>
-->
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...