Javascript 获取对浮动窗格的引用
我已经声明了一个浮动窗格“testFloatingPane”,但当我单击地图时,使用Javascript 获取对浮动窗格的引用,javascript,dojo,Javascript,Dojo,我已经声明了一个浮动窗格“testFloatingPane”,但当我单击地图时,使用 pFP=registry.byId(“testFloatingPane”)要检索它,pFP保持未定义状态。(请参见此操作)此代码的错误是什么 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> &l
pFP=registry.byId(“testFloatingPane”)代码>要检索它,pFP保持未定义状态。(请参见此操作)此代码的错误是什么
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no" />
<title>Simple Map</title>
<link rel="stylesheet" href="http://js.arcgis.com/3.8/js/esri/css/esri.css">
<link rel="stylesheet" type="text/css" href="http://js.arcgis.com/3.8/js/dgrid/css/skins/claro.css">
<link rel="stylesheet" type="text/css" href="https://js.arcgis.com/3.8/js/dojo/dojox/layout/resources/FloatingPane.css">
<link rel="stylesheet" type="text/css" href="https://js.arcgis.com/3.8/js/dojo/dojox/layout/resources/ResizeHandle.css">
<style>
html, body, #map {
height: 100%;
width: 100%;
margin: 0;
padding: 0;
}
body {
background-color: #FFF;
overflow: hidden;
font-family: "Trebuchet MS";
}
#testFLoatingPane {
-moz-border-radius: 6px;
-webkit-border-radius: 6px;
position: absolute;
top: 35px;
left: 60px;
width: 500px;
height: 300px;
z-index: 90;
}
.dojoxFloatingPaneContent {
font-family: Arial, Helvetica, sans-serif;
font-size: 8pt;
font-weight: bold;
overflow: auto;
}
.dojoxFloatingPaneTitle, .reportTitlePane {
color: white;
background-color: #76a2c5;
font-family: Arial, Helvetica, sans-serif;
font-size: 12pt;
font-weight: bold;
overflow: auto;
}
</style>
<script src="http://js.arcgis.com/3.8/"></script>
<script>
var map;
var pFP;
require(["esri/map", "dojox/layout/FloatingPane", "dijit/registry", "dojo/ready",
"dojo/domReady!"],
function (Map, FloatingPane, registry, ready) {
ready(function () {
pFP = registry.byId("testFloatingPane");
})
//pFP = new FloatingPane({
// title: "A floating pane",
// resizable: true, dockable: true, closable: false,
// //style: "position:relative;top:100px;left:0;width:400px;height:100px;visibility:hidden;",
// id: "pFloatingPane"
//}, dojo.byId("testFLoatingPane"));
//pFP.startup();
map = new Map("map", {
basemap: "topo",
center: [-122.45, 37.75], // long, lat
zoom: 13,
sliderStyle: "small"
});
map.on("click", function () {
pFP.show()
});
});
</script>
</head>
<body class="claro">
<div id="map"></div>
<!--<div id="testFloatingPane"></div>-->
<div id="testFloatingPane" data-dojo-type="dojox/layout/FloatingPane"
data-dojo-props="title:'Search Results', closable:false, resizable:true, dockable:true"
style="visibility: hidden;">
<!--<div id="reportContainer" data-dojo-type="dijit/layout/ContentPane">
</div>-->
</div>
</body>
</html>
简单地图
html,body,#map{
身高:100%;
宽度:100%;
保证金:0;
填充:0;
}
身体{
背景色:#FFF;
溢出:隐藏;
字体系列:“投石机MS”;
}
#测试浮动窗格{
-moz边界半径:6px;
-webkit边界半径:6px;
位置:绝对位置;
顶部:35px;
左:60px;
宽度:500px;
高度:300px;
z指数:90;
}
.dojoxFloatingPaneContent{
字体系列:Arial、Helvetica、无衬线字体;
字号:8pt;
字体大小:粗体;
溢出:自动;
}
.dojoxFloatingPaneTitle,.reportTitlePane{
颜色:白色;
背景色:#76a2c5;
字体系列:Arial、Helvetica、无衬线字体;
字号:12号;
字体大小:粗体;
溢出:自动;
}
var映射;
var-pFP;
要求([“esri/map”、“dojox/layout/FloatingPane”、“dijit/registry”、“dojo/ready”,
“dojo/domReady!”],
功能(映射、浮动窗格、注册表、就绪){
就绪(函数(){
pFP=registry.byId(“testFloatingPane”);
})
//pFP=新浮动窗格({
//标题:“浮动窗格”,
//可调整大小:真,可固定:真,可关闭:假,
////样式:“位置:相对;顶部:100px;左侧:0;宽度:400px;高度:100px;可见性:隐藏;”,
//id:“pFloatingPane”
//},dojo.byId(“testFLoatingPane”);
//pFP.startup();
地图=新地图(“地图”{
底图:“地形”,
中心:[-122.45,37.75],//长,纬度
缩放:13,
幻灯片样式:“小”
});
map.on(“单击”,函数(){
pFP.show()
});
});
这是一个漏掉这一行的例子
<script>dojoConfig = { parseOnLoad: true }</script>
dojoConfig={parseOnLoad:true}
它工作正常(css中的一个错误也已修复)
我也可以省略它,使用parser.parse();在我的就绪功能中