0

我正在尝试使用带有 Jquery 的 gmap3.net 插件创建地图,然后脚本应该监视它的移动,如果看到任何移动,则根据可查看地图的当前位置和半径(接近度)运行 xml 更新。

我还必须进行调整大小检查,因为它最初是在一个隐藏的 html5 页面中使用的,所以我在一个图块中看到地图,直到你刷新视图.....

所有这一切都说我在第 75 行字符 5(标记)附近遇到问题,开发控制台说 SCRIPT16386:不支持此类接口。如果有人能看到我哪里出错了,我将不胜感激试图学习这个插件的格式以及 jquery 和这个应用程序的其他一些东西,我想我开始盲目编码了哈哈.....

   var mylatLng = new google.maps.LatLng();
    $(this).gmap3({action:'trigger', name:'resize'});
jQuery.noConflict(); jQuery(document).ready(function(){  
//MAP ZOOM (0 to 20)
var zoomLevel = 10,
    gMap = jQuery("#map_canvas"),
//iPad,iPhone,iPod... 
deviceAgent = navigator.userAgent.toLowerCase(),
iPadiPhone = deviceAgent.match(/(iphone|ipod|ipad)/);

//iPad Stuff
if (iPadiPhone) {
    //ADD MAP CONTROLS AND POST ARROWS
    // jQuery("#footer").prepend('<div class="markerNav" title="Prev"    id="prevMarker">&lsaquo;</div><div id="markers"></div><div class="markerNav" title="Next" id="nextMarker">&rsaquo;</div><div id="mapTypeContainer"><div id="mapStyleContainer"><div id="mapStyle" class="satellite"></div></div><div id="mapType" title="Map Type" class="satellite"></div></div>');
} else {//IF NOT iPad
    jQuery('#zoomIn').live('click',function(){
        zoomLevel += 1;
        gMap.gmap3({action: 'setOptions', args:[{zoom:zoomLevel}]});
    });
    jQuery('#zoomOut').live('click',function(){
        zoomLevel -= 1;
        gMap.gmap3({action: 'setOptions', args:[{zoom:zoomLevel}]});
    });
    //ADD MAP CONTROLS AND POST ARROWS
    //jQuery("#footer").prepend('<div class="markerNav" title="Prev" id="prevMarker">&lsaquo;</div><div id="markers"></div><div class="markerNav" title="Next" id="nextMarker">&rsaquo;</div><div id="mapTypeContainer"><div id="mapStyleContainer"><div id="mapStyle" class="satellite"></div></div><div id="mapType" title="Map Type" class="satellite"></div></div><div class="zoomControl" title="Zoom Out" id="zoomOut"><img src="images/zoomOut.png" alt="-" /></div><div class="zoomControl" title="Zoom In" id="zoomIn"><img src="images/zoomIn.png" alt="+" /></div>');
}    
    // jQuery('body').prepend("<div id='target'></div>");

    gMap.gmap3({ 
        action: 'init',
        onces: {
          bounds_changed: function(){
            var number = 0;
            jQuery(this).gmap3({
              action:'getBounds', 
              callback: function (){
              if (!bounds) return;
                // Get Gmap radius / proximity start
                var bounds = new google.maps.LatLngBounds();
                var sw = bounds.getSouthWest(); 
                var ne = bounds.getNorthEast();
                var proximitymeterswne = google.maps.geometry.spherical.computeDistanceBetween (sw, ne);
                var proximity = proximitymeterswne * 0.000621371192;
                // Get Gmap radius / proximity End
              }
            });
          }
        } 
      },{ 
        action: 'setOptions', args:[{
            zoom:zoomLevel,
            scrollwheel:true,
            disableDefaultUI:false,
            disableDoubleClickZoom:false,
            draggable:true,
            mapTypeControl:true,
            panControl:true,
            scaleControl:true,
            streetViewControl:true,
            zoomControl:true,
            //MAP TYPE: 'roadmap', 'satellite', 'hybrid'
            mapTypeId:'roadmap'
        }]
    });
});
// PROBLEM WITH THE FOLLOWING LINE
        $(function(){
// PROBLEM WITH THE ABOVE LINE
            $("#map_canvas").gmap3(
                {
                    action : 'geoLatLng',
                    callback : function(latLng){
                        if (latLng){
                            //$('#resultat-geolocalisation').html('sucess !');
                            $(this).gmap3({action:'trigger', name:'resize'});
                            $(this).gmap3(
                                {
                                action: 'addMarker',
                                latLng:latLng,
                                options:{
                                        icon:new google.maps.MarkerImage("2.png")
                                        },
                                callback: function (){
                                  if (!bounds) return;
                                    // Get Gmap radius / proximity start
                                    var bounds = new google.maps.LatLngBounds();
                                    var sw = bounds.getSouthWest(); 
                                    var ne = bounds.getNorthEast();
                                    var proximitymeterswne = google.maps.geometry.spherical.computeDistanceBetween (sw, ne);
                                    var proximity = proximitymeterswne * 0.000621371192;
                                    // Get Gmap radius / proximity End
                                  },                                                                                      
                                },                                      
                                { action: 'addTrafficLayer'},
                                { 
                                  action: 'addKmlLayer',
                                  url: 'http://www.mykml', 
                                  options:{
                                    suppressInfoWindows: true,
                                    preserveViewport: false
                                  }
                                }
                            );
                        } else {
                            //$('#resultat-geolocalisation').html('cant geolocate!');
                            alert('Location Not Found');
                        }
                    }
                }
            );
        });
4

1 回答 1

0

我通过 Netbeans 运行了这个并找到了一个 duff ,对于任何关注的人。

人族

于 2012-02-12T20:43:37.897 回答