Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery ui 如何在jQueryUI对话框中集成OpenLayers映射?_Jquery Ui_Jquery Ui Dialog_Openlayers - Fatal编程技术网

Jquery ui 如何在jQueryUI对话框中集成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 = $(

我有一个带有Openlayer地图的网页。当用户单击标记时,会打开一个jQueryUI对话框,显示来自ajax调用的一些信息。我还想展示一个围绕单击标记的小openlayers地图

尝试将地图嵌入对话框时会出现问题

正确的操作顺序是什么:

  • 初始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();//防止拖动缩放错误
});