对于 JQuery 和 OpenLayers 来说都是相当新的。一切都进展顺利,直到我尝试使用 JQuery 的对话框类打开模式对话框。
该对话框工作正常,只是它出现在 map 的某些元素下:
这在 Opera 和 Chrome 中都是相同的(其他未测试)。谁能建议一种方法来解决这个问题?谢谢。
编辑:我创建了一个 fiddle here这演示了问题。
HTML:
<body>
<div id="map"></div>
<div id="popup" title="Test">
<p>Blah blah</p>
</div>
</body>
Javascript:
var map;
$(function () {
//init map
map = new OpenLayers.Map('map', {});
var wms = new OpenLayers.Layer.Google('Google Map Layer', { type: google.maps.MapTypeId.HYBRID });
map.addLayer(wms);
if (!map.getCenter()) {
map.zoomToMaxExtent();
}
//init popup
$("#popup").dialog({
height: 400,
width: 300,
modal: true
});
});
最佳答案
看起来如果您将 position:relative;
添加到 map 中,它就会按预期工作。
#map { position:relative; width:200px; height:200px; }
关于JQuery 弹出窗口出现在某些 map 元素下,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13085628/