【发布时间】:2010-09-07 21:36:17
【问题描述】:
标记可以拖动,因此自定义叠加层也可以拖动,
那么如何使自定义叠加层可拖动,
谢谢
【问题讨论】:
标签: google-maps draggable overlay
标记可以拖动,因此自定义叠加层也可以拖动,
那么如何使自定义叠加层可拖动,
谢谢
【问题讨论】:
标签: google-maps draggable overlay
我最近在一个类似的主题上整理了一个解决方案,该主题也非常适用于这个问题:
以下是工作示例: http://www.johnmick.net/drag-div-v3/
以下是部分来源: http://www.johnmick.net/drag-div-v3/js/main.js
要使自定义叠加层本身可拖动,使用 jQuery UI,您只需使叠加层的 div 对象可拖动,如下所示:
CustomOverlay.prototype.onAdd = function()
{
var div = document.createElement("DIV");
div.style.border = "none";
div.style.borderWidth = "0px";
div.style.position = "absolute";
div.style.visibility = "visible";
jQuery(div).draggable(); //Make the overlay itself draggable
this.div = div;
this.addPolygon(new google.maps.LatLng(46,0));
this.getPanes().overlayLayer.appendChild(div);
};
【讨论】:
如果您使用的是自定义“OverlayView”,我发现添加您的可拖动对象“overlayMouseTarget”窗格将允许您捕获该对象上的鼠标事件,例如使用 jQuery UI 并将 draggable() 应用于对象。
【讨论】:
this.getPanes().overlayMouseTarget.appendChild(div);