teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

7

型変換処理追加

2016/10/16 16:04

投稿

chitoku
chitoku

スコア1610

answer CHANGED
@@ -84,8 +84,9 @@
84
84
  // 各要素(map)に対して関数を一回ずつ実行
85
85
  Array.prototype.forEach.call(elements, function (map) {
86
86
  // 緯度経度を取得
87
+ // + をつけて数値へ変換
87
- var lat = map.dataset.lat;
88
+ var lat = +map.dataset.lat;
88
- var lng = map.dataset.lng;
89
+ var lng = +map.dataset.lng;
89
90
 
90
91
  // 地図とマーカーの初期化
91
92
  var marker = new google.maps.Marker({

6

文法修正

2016/10/16 16:04

投稿

chitoku
chitoku

スコア1610

answer CHANGED
@@ -95,8 +95,8 @@
95
95
  center: new google.maps.LatLng(lat, lng),
96
96
  mapTypeId: google.maps.MapTypeId.ROADMAP,
97
97
  scaleControl: true,
98
- },
98
+ }),
99
- });
99
+ });
100
100
  });
101
101
  </script>
102
102
  </body>

5

Protocol

2016/10/16 14:57

投稿

chitoku
chitoku

スコア1610

answer CHANGED
@@ -33,7 +33,7 @@
33
33
  }
34
34
 
35
35
  // ロジック(出力の絡まない処理)はページ先頭で処理
36
- $url = 'http://webservice.recruit.co.jp/hotpepper/gourmet/v1/?';
36
+ $url = 'https://webservice.recruit.co.jp/hotpepper/gourmet/v1/?';
37
37
  $xml = simplexml_load_file($url . http_build_query(array(
38
38
  'key' => 'my key',
39
39
  'count' => 10,

4

ユニークな ID を設定するよう修正

2016/10/16 09:37

投稿

chitoku
chitoku

スコア1610

answer CHANGED
@@ -66,7 +66,7 @@
66
66
  <tr>
67
67
  <td>
68
68
  <!-- data-lat と data-lng に緯度経度情報を保存 -->
69
- <div class="map" data-lat="<?= h($r->lat) ?>" data-lng="<?= h($r->lng) ?>" style="width: 500px; height: 370px; border: 1px solid gray;"></div>
69
+ <div id="shop-<?= $r->id ?>" class="map" data-lat="<?= h($r->lat) ?>" data-lng="<?= h($r->lng) ?>" style="width: 500px; height: 370px; border: 1px solid gray;"></div>
70
70
  </td>
71
71
  </tr>
72
72
  <tr>
@@ -78,8 +78,8 @@
78
78
  ?>
79
79
  <script src="https://maps.google.com/maps/api/js?key=My Key&sensor=false"></script>
80
80
  <script>
81
- // map がついている要素をすべて取得
81
+ // ID に shop- がついている要素をすべて取得
82
- var elements = document.getElementsByClassName("map");
82
+ var elements = document.querySelectorAll("[id^='shop-']");
83
83
 
84
84
  // 各要素(map)に対して関数を一回ずつ実行
85
85
  Array.prototype.forEach.call(elements, function (map) {

3

短縮

2016/10/16 09:15

投稿

chitoku
chitoku

スコア1610

answer CHANGED
@@ -87,18 +87,15 @@
87
87
  var lat = map.dataset.lat;
88
88
  var lng = map.dataset.lng;
89
89
 
90
- // 地図の初期化
91
- var mapObj = new google.maps.Map(map, {
92
- zoom: 12,
93
- center: new google.maps.LatLng(lat, lng),
94
- mapTypeId: google.maps.MapTypeId.ROADMAP,
95
- scaleControl: true,
96
- });
97
-
98
- // マーカーの初期化
90
+ // 地図とマーカーの初期化
99
- var marke = new google.maps.Marker({
91
+ var marker = new google.maps.Marker({
100
92
  position: { lat: lat, lng: lng },
93
+ map: new google.maps.Map(map, {
101
- map: mapObj,
94
+ zoom: 12,
95
+ center: new google.maps.LatLng(lat, lng),
96
+ mapTypeId: google.maps.MapTypeId.ROADMAP,
97
+ scaleControl: true,
98
+ },
102
99
  });
103
100
  });
104
101
  </script>

2

ケツカンマ教

2016/10/14 19:35

投稿

chitoku
chitoku

スコア1610

answer CHANGED
@@ -88,17 +88,17 @@
88
88
  var lng = map.dataset.lng;
89
89
 
90
90
  // 地図の初期化
91
- var mapObj = new google.maps.Map(map, {
91
+ var mapObj = new google.maps.Map(map, {
92
- zoom: 12,
92
+ zoom: 12,
93
- center: new google.maps.LatLng(lat, lng),
93
+ center: new google.maps.LatLng(lat, lng),
94
- mapTypeId: google.maps.MapTypeId.ROADMAP,
94
+ mapTypeId: google.maps.MapTypeId.ROADMAP,
95
- scaleControl: true
95
+ scaleControl: true,
96
96
  });
97
97
 
98
98
  // マーカーの初期化
99
- var marke = new google.maps.Marker({
99
+ var marke = new google.maps.Marker({
100
- position: { lat: lat, lng: lng },
100
+ position: { lat: lat, lng: lng },
101
- map: mapObj
101
+ map: mapObj,
102
102
  });
103
103
  });
104
104
  </script>

1

いらないとこ削った

2016/10/14 19:26

投稿

chitoku
chitoku

スコア1610

answer CHANGED
@@ -48,7 +48,6 @@
48
48
  <?php
49
49
  exit;
50
50
  }
51
- $total_count = $xml->results_available;
52
51
  ?>
53
52
  <!DOCTYPE html>
54
53
  <html>
@@ -97,8 +96,8 @@
97
96
  });
98
97
 
99
98
  // マーカーの初期化
100
- var marker = new google.maps.Marker({
99
+ var marke = new google.maps.Marker({
101
- position: { lat: lat, lng: lng},
100
+ position: { lat: lat, lng: lng },
102
101
  map: mapObj
103
102
  });
104
103
  });