Bonjour,
Sur mon site, je voudrais créer une page avec une liste de lieux issus de ma base de données.
Je voudrais afficher, au survol de la souris sur un élément (a priori un texte du type "Voir la carte"), afficher la carte google maps associée, ce qui permettrait à l'utilisateur de visualiser l'emplacement de ce lieu.
J'arrive à afficher 2 cartes, mais je dois dupliquer tout le code 2 fois, ce qui est évidemment n'est pas optimal. D'autant plus que je voudrais afficher une vingtaine de cartes et non pas 2.
Est-ce quelqu'un aurait la solution pour alléger ce code et me permettre d'afficher 20 cartes sans pour autant créer une usine à gaz ?
Voici ci-dessous le code que j'ai pour le moment.
Par avance merci de votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67 <!DOCTYPE html> <html> <head> <style type="text/css"> html { height: 100% } body { height: 100%; margin: 0px; padding: 0px } #maps_container1 { margin-left:35px;width:500px; height:500px;} #map_canvas1 { height: 500px; width:500px; } #maps_container1 #map_canvas1 { display:none;width:500px; height:500px;} #maps_container1:hover #map_canvas1{ position:absolute;display:block; width:500px; height:500px; } #maps_container2 { margin-left:35px;width:500px; height:500px;} #map_canvas2 { height: 500px; width:500px; } #maps_container2 #map_canvas2 { display:none;width:500px; height:500px;} #maps_container2:hover #map_canvas2{ position:absolute;display:block; width:500px; height:500px; } </style> <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"> </script> <script type="text/javascript"> var map1,map2; function initialize() { var myLatlng = new google.maps.LatLng(-34.397, 150.644); var myOptions = { zoom: 8, center: myLatlng, mapTypeId: google.maps.MapTypeId.ROADMAP } map1 = new google.maps.Map(document.getElementById("map_canvas1"), myOptions); map2 = new google.maps.Map(document.getElementById("map_canvas2"), myOptions); } function loadScript() { var script = document.createElement("script"); script.type = "text/javascript"; script.src = "http://maps.google.com/maps/api/js?sensor=false&callback=initialize"; document.body.appendChild(script); } window.onload = loadScript; </script> </head> <body onload="initialize()"> <div id="maps_container1">Lieu 1 : Voir la carte <div id="map_canvas1" style="width:500px; height:500px;"></div> </div> <div id="maps_container2">Lieu 2 : Voir la carte <div id="map_canvas2" style="width:500px; height:500px;"></div> </div> </body> </html>
Partager