Javascript 使用socket.io和jquery向google地图添加标记

Javascript 使用socket.io和jquery向google地图添加标记,javascript,jquery,google-maps,socket.io,Javascript,Jquery,Google Maps,Socket.io,我是socket.io的新手 我可以使用socket和node.js发出事件 现在我想从用户那里得到一个带有lat,lang的数组&然后 在谷歌地图上动态设置标记 这是我的密码 <!doctype html> <html> <head> <title>Socket.IO chat</title> <style> * { margin: 0; padding: 0; box-sizing

我是socket.io的新手 我可以使用socket和node.js发出事件 现在我想从用户那里得到一个带有lat,lang的数组&然后 在谷歌地图上动态设置标记

这是我的密码

    <!doctype html>
<html>
  <head>
    <title>Socket.IO chat</title>
    <style>
      * { margin: 0; padding: 0; box-sizing: border-box; }
      body { font: 13px Helvetica, Arial; }
      form { background: #000; padding: 3px; position: fixed; bottom: 0; width: 100%; }
      form input { border: 0; padding: 10px; width: 90%; margin-right: .5%; }
      form button { width: 9%; background: rgb(130, 224, 255); border: none; padding: 10px; }
      #messages { list-style-type: none; margin: 0; padding: 0; }
      #messages li { padding: 5px 10px; }
      #messages li:nth-child(odd) { background: #eee; }
      #messages { margin-bottom: 40px }
    </style>
  </head>
  <body>

<div id="map" style="width:;height:700px;background:yellow"></div>

<script>
function myMap() {
var mapOptions = {
    center: new google.maps.LatLng('23.11', '71.00'),
    zoom: 10,
    mapTypeId: google.maps.MapTypeId.HYBRID
}
var map = new google.maps.Map(document.getElementById("map"), mapOptions);
}
</script>
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCm2vXXUTO627j8UHqDIKvvETwuNT1dqxQ&callback=myMap"></script>

    <form action="">
      <input id="m" autocomplete="off" /><button>Send</button>
    </form>
    <script src="https://cdn.socket.io/socket.io-1.2.0.js"></script>
    <script src="https://code.jquery.com/jquery-1.11.1.js"></script>
    <script>
      $(function () {
        var socket = io('http://localhost:3000');
        $('form').submit(function(){
          socket.emit('chat message', $('#m').val());
          $('#m').val('');
          return false;
        });
        socket.on('chat message', function(msg){
        //I want to add marker here
        });
      });
}
    </script>
  </body>
</html>

Socket.IO聊天
*{边距:0;填充:0;框大小:边框框;}
正文{字体:13px Helvetica,Arial;}
表单{background:#000;填充:3px;位置:固定;底部:0;宽度:100%;}
表单输入{边框:0;填充:10px;宽度:90%;右边距:5%;}
窗体按钮{宽度:9%;背景:rgb(130224255);边框:无;填充:10px;}
#消息{列表样式类型:无;边距:0;填充:0;}
#消息li{padding:5px 10px;}
#留言李:第n个孩子(奇数){背景:#eee;}
#消息{页边距底部:40px}
函数myMap(){
变量映射选项={
中心:新的google.maps.LatLng('23.11','71.00'),
缩放:10,
mapTypeId:google.maps.mapTypeId.HYBRID
}
var map=new google.maps.map(document.getElementById(“map”)、mapOptions);
}
发送
$(函数(){
变量套接字=io('http://localhost:3000');
$('form')。提交(函数(){
emit('chat message',$('#m').val());
$('m').val('');
返回false;
});
socket.on('chat message',函数(msg){
//我想在这里添加标记
});
});
}

您可以看到我的活动和谷歌地图脚本

一些简单的好开始:

<!doctype html>
<html>
  <head>
    <title>Socket.IO chat</title>
    <style>
      * { margin: 0; padding: 0; box-sizing: border-box; }
      body { font: 13px Helvetica, Arial; }
      form { background: #000; padding: 3px; position: fixed; bottom: 0; width: 100%; }
      form input { border: 0; padding: 10px; width: 90%; margin-right: .5%; }
      form button { width: 9%; background: rgb(130, 224, 255); border: none; padding: 10px; }
      #messages { list-style-type: none; margin: 0; padding: 0; }
      #messages li { padding: 5px 10px; }
      #messages li:nth-child(odd) { background: #eee; }
      #messages { margin-bottom: 40px }
    </style>
  </head>
  <body>
    <div id="map" style="width:;height:700px;background:yellow"></div>
    <script>
      function myMap() {
        var mapOptions = {
          center: new google.maps.LatLng('23.11', '71.00'),
          zoom: 10,
          mapTypeId: google.maps.MapTypeId.HYBRID
        }
        map = new google.maps.Map(document.getElementById("map"), mapOptions);
      }
   </script>
   <script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCm2vXXUTO627j8UHqDIKvvETwuNT1dqxQ&callback=myMap"></script>
    <form action="">
      <input id="m" autocomplete="off" /><button>Send</button>
    </form>
    <script src="https://cdn.socket.io/socket.io-1.2.0.js"></script>
    <script src="https://code.jquery.com/jquery-1.11.1.js"></script>
    <script>
      $(function () {
        var socket = io('http://localhost:3000');
        $('form').submit(function(){
          socket.emit('chat message', $('#m').val());
          $('#m').val('');
          return false;
        });
        socket.on('chat message', function(msg){
          var marker = new google.maps.Marker({
            position: new google.maps.LatLng('23.11', '71.00'),
            title: msg,
            label: 'a',
            map: map
           });
           marker.setMap(map);
        });
      });
    </script>
  </body>
</html>   
你必须添加一些提示,比如发送你的位置、用户名、标记图标等

socket.on('chat message', function(msg) {
    socket.emit ('chat message', msg);   
});