サンプルhttp://openlayers.org/dev/examples/drag-feature.htmlを実装しようとしています。
これを Google マップで実装すると、奇妙なバグが発生します。マップ上のマウス ポインターとドットが同じ場所にありません。
太字の行を変更すると: map.addLayers([gmap,vectors]); map.addLayers([wms,vectors]); に すべてが機能します。(つまり、Google マップは使用しません)。
誰かが何が起こっているのか教えてもらえますか?
前もって感謝します。
ここに私のページとコードがあります:
var map;
var vectors;
function initialize() {
// Create the map object
map = new OpenLayers.Map('map');
//Create a Google layer
var gmap = new OpenLayers.Layer.Google(
"Google Streets", // the default
{numZoomLevels: 20}
);
// if i use this instead of gmap then everything works.
var wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",
"http://vmap0.tiles.osgeo.org/wms/vmap0?", {layers: 'basic'});
var renderer=OpenLayers.Util.getParameters(window.location.href).renderer;
renderer=(renderer) ? [renderer] : OpenLayers.Layer.Vector.prototype.renderers;
vectors= new OpenLayers.Layer.Vector("Vector Layer",{
renderers:renderer
});
map.addLayers([gmap,vectors]);
map.addControl(new OpenLayers.Control.LayerSwitcher());
map.addControl(new OpenLayers.Control.MousePosition());
var control=new OpenLayers.Control.DrawFeature(vectors,OpenLayers.Handler.Path);
map.addControl(control);
control.activate();
// Zoom to Vancouver, BC
map.setCenter(new OpenLayers.LonLat(-123.12, 49.28), 13);
}