2012-04-19 42 views
1

關於如何只在mouseover上顯示多邊形的任何建議?我認爲必須可以在樣式對象上將初始fillOpacity和strokeOpacity設置爲0。Openlayers如何僅在鼠標懸停時顯示多邊形,並在mouseout上隱藏?

然後將一個mouseover和mouseout偵聽器附加到多邊形本身,並在調用偵聽器時修改fillOpacity和strokeOpacity樣式?

但是,我有點卡在實際上如何開始這個。

任何指導和幫助表示讚賞!

+0

您是否嘗試過加入['OpenLayers.Control.SelectFeature'](http://dev.openlayers.org/docs/files/OpenLayers/Control/SelectFeature-js .html)並將'hover'設置爲'true'?我就是這麼做的。你對改變多邊形不透明度是正確的。 – 2012-04-19 08:23:18

+0

是的,我已經嘗試過,但後來干擾我的另一個事件,即onclick。所以要麼我需要另一個解決方案來處理懸停。或者我需要以某種方式區分懸停和點擊事件。有什麼建議麼? – netbrain 2012-04-19 08:27:57

+0

這是否意味着您希望能夠同時懸停和選擇(通過單擊)多邊形? – 2012-04-19 08:30:28

回答

2

它使用解決:

  new OpenLayers.Control.SelectFeature(this.layer,{ 
       clickout: true, toggle: false, 
       multiple: true, hover: true, 
       callbacks: { 
        'over':function(feature){ 

        }, 
        'out':function(feature){ 

        }, 
        'click':function(feature){ 

        } 
       } 
      }) 
相關問題