0

我是 jQuery 的新手。我已经用它做了一些简单的事情,但我现在正在尝试做的事情太过分了,我需要一些帮助。

我正在为美国的所有枪支经销商为客户建立一个定位器。我在 Drupal 中工作。我通过邮政编码进行邻近搜索,效果很好。如果您通过 zip 搜索,则分页结果列表会显示在 html 表格中,该表格可以通过 ajax 进行分页。

我希望在此列表上方有一张地图,其标记对应于列出的名称和地址。我已经在表格结果中包含了所有纬度和经度值。当用户通过结果更改表格或页面的排序顺序时,我希望脚本更新标记并自动缩放以适应视图中的标记。

另外,我想在表格的行上同时突出显示相应的标记,并点击表格行等于点击弹出标记信息窗口的标记,使用jQuery 读取表的名称和地址字段。希望这一切都有意义。

我知道我在外面放了很多东西,我不是要求有人写整个剧本,只是想提供尽可能多的细节。谢谢你的帮助。当谈到循环和移动数据时,我只是迷路了。

如果您想查看我目前对该项目的了解,请访问:www.axtsweapons.com 并使用用户名:“test”和密码:“1234”登录,然后访问此直接链接:www.axtsweapons.com /ffllocator

对于一个易于操作和玩的简单页面,请访问:http ://www.axtsweapons.com/maptest.html谢谢!

4

1 回答 1

1

想出了如何遍历表格并将图钉推入地图。现在我无法弄清楚如何将 Google Maps API V3 的边界功能与我的脚本集成。让我知道是否有任何指示。这是我正在使用的测试代码:

$(function() {
   var latlng = new google.maps.LatLng(45.522015,-122.683811);

   var settings = {
      zoom: 15,
      center: latlng,
      disableDefaultUI: false,
      mapTypeId: google.maps.MapTypeId.ROADMAP
   };

   var map = new google.maps.Map(document.getElementById("map_canvas"), settings);

      $('tr').each(function(i) {

         var the_marker = new google.maps.Marker({
            title: $(this).find('.views-field-title').text(),
            map: map,
            clickable: true,
            position: new google.maps.LatLng(
               parseFloat($(this).find('.views-field-latitude').text()),
               parseFloat($(this).find('.views-field-longitude').text())
            )
         });

         var infowindow = new google.maps.InfoWindow({
            content:  $(this).find('.views-field-title').text() +
                      $(this).find('.adr').text()
         });

         new google.maps.event.addListener(the_marker, 'click', function() {
            infowindow.open(map, the_marker);
         });
      });
});

另外,我想知道如何在信息窗口数据中插入换行符。谢谢

于 2010-04-27T21:55:49.917 回答