全部失敗。我有這個小問題和我'尋找一些幫助:重新激活拖動控件在開放層
首先我必須包含以下功能:
var point = new OpenLayers.Geometry.Point(imageConfig.XPos, imageConfig.YPos);
var imageFeature = new OpenLayers.Feature.Vector(point);
layers.imageLayer.addFeatures([imageFeature]);
所以一個點圖層上繪製。在這個層上還有一個openlayers拖動控件。它在繪製點後被激活。現在我可以拖動點。奇蹟般有效。
這是用戶驅動的逐步過程的一小部分。所以在拖拽完成後,接下來的步驟就是要做點什麼。當這些其他步驟拖動控制被停用。在該過程中,可以在步驟之間跳轉,因此需要拖放控件的取消/激活。這工作正常。
在所有步驟結束時,點將從圖層中移除。這也很好。
但是:如果我再次調用繪製圖層上的點的函數(因爲它現在是新的),並激活拖動控件,我不能再拖動新點,即使我嘗試選擇點用鼠標點擊?!
我firbug控制:
- 特徵是有
- 特徵是正確的層上
- 控制那裏
- 控制權層
- 控制被激活 上
也許我在這裏錯過了一件簡單的事情。但是現在我在這件事上打破了兩天,並且找不到答案。
順便說一下,我發現在第一步序列(當所有工程都很好)時,控制特徵屬性被設置爲點特徵。但在第二個不是。控件拖動處理程序功能屬性中的相同。
我試圖通過手動設置:
control.feature = imageFeature
和:
control.handler.drag.feature = imageFeature
我一直在尋找新的功能集與所控制的功能。但是在openlayers文檔中找不到任何內容。 其他控件不能同時處於活動狀態(用螢火蟲控制)。
但沒有運氣。沒有幫助。爲什麼這個?我確信這應該起作用。站在這裏,我做錯了什麼?
每個幫助讚賞。
謝謝