Jquery ui 如何在jQueryUI对话框中集成OpenLayers映射?
我有一个带有Openlayer地图的网页。当用户单击标记时,会打开一个jQueryUI对话框,显示来自ajax调用的一些信息。我还想展示一个围绕单击标记的小openlayers地图 尝试将地图嵌入对话框时会出现问题 正确的操作顺序是什么:Jquery ui 如何在jQueryUI对话框中集成OpenLayers映射?,jquery-ui,jquery-ui-dialog,openlayers,Jquery Ui,Jquery Ui Dialog,Openlayers,我有一个带有Openlayer地图的网页。当用户单击标记时,会打开一个jQueryUI对话框,显示来自ajax调用的一些信息。我还想展示一个围绕单击标记的小openlayers地图 尝试将地图嵌入对话框时会出现问题 正确的操作顺序是什么: 初始OL映射 声明jquery对话框 打开jquery对话框 多谢各位 阿尔贝托以下是我的(工作)解决方案: // create map container (id=map) and append to document body var div = $(
- 初始OL映射
- 声明jquery对话框
- 打开jquery对话框
// create map container (id=map) and append to document body
var div = $('<div />')
.attr('id', 'map').
css({width:400,height:400})
.appendTo($('body'));
//start a simple map, code from on http://openlayers.org/dev/examples/osm.html
map = new OpenLayers.Map( 'map');
layer = new OpenLayers.Layer.OSM( "Simple OSM Map");
map.addLayer(layer);
map.setCenter(
new OpenLayers.LonLat(-71.147, 42.472).transform(
new OpenLayers.Projection("EPSG:4326"),
map.getProjectionObject()
), 12
);
// initialize the jQueryUI Dialog
div.dialog({
width:800,
height:600,
title: 'My Map',
resizeStop: function(){
map.updateSize(); //to prevent drag-zoom error
},
dragStop: function(){
map.updateSize(); //to prevent drag-zoom error
});
//创建映射容器(id=map)并附加到文档体
var div=$('')
.attr('id','map')。
css({宽度:400,高度:400})
.附于($(“正文”);
//开始一个简单的映射,从上开始编码http://openlayers.org/dev/examples/osm.html
map=newOpenLayers.map('map');
layer=新的OpenLayers.layer.OSM(“简单OSM映射”);
map.addLayer(层);
地图设置中心(
新OpenLayers.LonLat(-71.147,42.472).转换(
新OpenLayers.投影(“EPSG:4326”),
map.getProjectionObject()文件
), 12
);
//初始化jQueryUI对话框
div.dialog({
宽度:800,
身高:600,
标题:“我的地图”,
resizeStop:function(){
map.updateSize();//防止拖动缩放错误
},
dragStop:function(){
map.updateSize();//防止拖动缩放错误
});