Google Maps APIをhttpsのサイトで使う

Google Maps API v.3を使ってサイトにマップを表示させると

<script type="text/javascript" src="http://maps.google.com/maps/api/js?key=xxxxxxxxxx"></script>

な感じで読み込みますがこれだとhttpsのサイトで埋め込むとエラーになります

<script type="text/javascript" src="//maps-api-ssl.google.com/maps/api/js?key=xxxxxxxxxx"></script>

とアドレスを少し変えてやると大丈夫です
これだとhttpのサイトでも表示できました

Google MapsでinfoWindowの閉じるボタンをなくしてみる

Google Maps API v.3.22のinfoWindow、いわゆるふきだしの閉じるボタンを取ってみました

公式のリファレンスを見ても、設定がなさそう..
Google Maps JavaScript API V3 Reference  |  Google Maps JavaScript API  |  Google Developers

cssでボタンを消して、文字の位置を調整してみました
追加でCSSを

.gm-style-iw {
  margin-left: 10px;
}
.gm-style-iw + div {
  display: none;
}

これでこんな感じに

google-map-sample

ソース全部はこんな感じです

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="initial-scale=1.0, user-scalable=1.0" />
    <title>google map</title>
    <style type="text/css">
      html { height: 100% }
      body { height: 100%; margin: 0; padding: 0 }
      #map_canvas { height: 100% }
      /* hide close button on infoWindow */
      .gm-style-iw {
        margin-left: 10px;
      }
      .gm-style-iw + div {
        display: none;
      }
    </style>
  </head>
  <body>
    <div id="map_canvas"></div>
    <script type="text/javascript">
      function initMap() {
        var point = {lat: -24.363, lng: 130.044};
        var map = new google.maps.Map(document.getElementById('map_canvas'), {
          center: point,
          scrollwheel: true,
          zoom: 8
        });
        marker = new google.maps.Marker({
          position: point,
          map: map,
          label: 'A'
        });
        info = new google.maps.InfoWindow({
          content: 'No.1'
        });
        info.open(map, marker);
      }
    </script>
    <script type="text/javascript"
      src="http://maps.googleapis.com/maps/api/js?key=AIzaSyCj58ghahiTjKQ25OlCI5TfFEsntAahMFM&callback=initMap">
    </script>
  </body>
</html>

参考:
GMaps V3 InfoWindow – disable the close “x” button-open source projects hpneo/gmaps

Jsonの値を変数に入ったキーでとってみる

Jsonの値を変数に入ったキーでとってみました

たとえば

var sample = {
  "one": {
    "id": "123",
    "value": "aaa"
  },
  "two": {
    "id": "456",
    "value": "bbb"
  }
}

といったjsonがあるとき

sample.one
// もしくは
sample["one"]

で値が取れます
変数にキーを保存しておいてアクセスしたいときは

var key = "one";
sample[key]
// sample.key はだめ

で取れます

javascriptで新しくウィンドウを開いて操作する

javascriptでウィンドウを開いて操作してみたかったので試してみました
openして値をとって、書き出してみます

child.htmlを用意しておいて、
call_child()で、新しいウィンドウをオープン、
get_child_title()だと、h1の下にpタグで、child.htmlのh1タグのテキストを追記するようになります

  <script type="text/javascript">
    var child_window;
    function call_child() {
      child_window = window.open('child.html', 'child', 'width=400, height=300, menubar=no, toolbar=no, scrollbars=no');
    }
    function get_child_title() {
      var h1 = child_window.document.getElementById('title');
      var this_h1 = document.getElementById('title');
      this_h1.insertAdjacentHTML('afterend', '<p>'+h1.textContent+'</p>')
    }
  </script>

Firefoxで試しました
Chromeだと、クロスオリジンとかって怒れられて動きません