Comment executer une fonction javascript plusieurs fois

Fermé
eleveing Messages postés 73 Date d'inscription jeudi 30 août 2012 Statut Membre Dernière intervention 27 février 2014 - 13 juil. 2013 à 03:21
eleveing Messages postés 73 Date d'inscription jeudi 30 août 2012 Statut Membre Dernière intervention 27 février 2014 - 16 juil. 2013 à 17:12
Bonjour tout le monde,

ca serait tres gentil si vous pouvez m'aider a resoudre le probleme suivant:
J'ai une fonction javascript qui permet d afficher des positions sur la carte, je sais pas coment rendre mettre cette fonction dans une boucle et afficher plusieurs positions et aussi comment recupere ces positions definies par x et y a partir de la base de donnees
voila mon script:
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<style type="text/css">
html { height: 100% }
body { height: 100%; margin: 0; padding: 0 }
#map-canvas { height: 100% }
</style>

<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript" src="jquery.min.js"></script>

<script type="text/javascript" src="jquery-ui-1.8.12.custom.min.js"></script>

<script type="text/javascript" >

function initialize() {

var x = 33.5333333
var y = -7.5833333
var latLng1 = new google.maps.LatLng(x,y);

var mapOptions1 = {
center: latLng1,
zoom: 8,
mapTypeId: google.maps.MapTypeId.ROADMAP
};

var map = new google.maps.Map(document.getElementById("map-canvas"),
mapOptions1);

var marker1 = new google.maps.Marker({
position : latLng1,
map : map,
title : "Lille"
//icon : "marker_lille.gif"
});


var infoWindow1 = new google.maps.InfoWindow({
scontent : contentMarker1,

position : latLng1,
});





google.maps.event.addListener(marker1, 'click', function() {
infoWindow1.open(map,marker1);
});


google.maps.event.addListener(infoWindow1, 'domready', function(){ // infoWindow est biensûr notre info-bulle
jQuery("#tabs").tabs();
});


}
google.maps.event.addDomListener(window, 'load', initialize);

</script>

</head>
<body>
<div id="map-canvas"/>
</body>
</html>

3 réponses

Utilisateur anonyme
14 juil. 2013 à 00:39
et bien dans un code javascript tu appel simplement ta fonction :

<script type="text/javascript">initialize()</script>


Ensuite, pour changer le x et y tu peux envoyer des arguments à ta fonction :

Appel de la fonction avec arguments :
<script type="text/javascript">initialize(33, -7)</script>


Donc du coup :
function initialize(posiX, posiY)


Tu récupère ensuite les arguments :

var x = posiX
var y = posiY 
0
eleveing Messages postés 73 Date d'inscription jeudi 30 août 2012 Statut Membre Dernière intervention 27 février 2014 1
16 juil. 2013 à 17:12
Merci pour vos repenses alien41 et astuces72!!je vais tester ce que vous m avez proposé !!
0
astuces72 Messages postés 7723 Date d'inscription vendredi 15 janvier 2010 Statut Membre Dernière intervention 22 avril 2024 1 637
Modifié par astuces72 le 14/07/2013 à 09:26
hello

essaye ça avec tes paramètres de connexion à ta base:
je n'ai pas essayé si ça marche !

<body>
  <div id="map" style="width: 500px; height: 400px;"></div>

  <script type="text/javascript">
    var locations = [
 <?php
 $i=0;
$query=("SELECT * FROM ta_base WHERE ");
$result = mysql_query($query);
while ($val = mysql_fetch_array($result))
{
echo "['".$val['ville']."', ".$val['lat'].", ".$val['lng'].", ".$i."],";
$i++;
} ?>
    ];
    var map = new google.maps.Map(document.getElementById('map'), {
      zoom: 5,
      center: new google.maps.LatLng(46.604167, 2.724609),
      mapTypeId: google.maps.MapTypeId.ROADMAP
    });

    var infowindow = new google.maps.InfoWindow();

    var marker, i;

    for (i = 0; i < locations.length; i++) {  
      marker = new google.maps.Marker({
        position: new google.maps.LatLng(locations[i][1], locations[i][2]),
        map: map
      });

      google.maps.event.addListener(marker, 'click', (function(marker, i) {
        return function() {
          infowindow.setContent(locations[i][0]);
          infowindow.open(map, marker);
        }
      })(marker, i));
    }
  </script>
</body>


si tu veux plus, comme des infobulles, regarde la source de ce moteur de recherche:
http://vuedirecte.reliefmicro.fr
-1