arcgis api for js 为什么显示不出来图标是不是坐标的问题?其中如果被注释的放大等级取消注释就可以显示自定义的标示;

Boo_T 2016-09-13 04:38:47
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title>
<link rel="stylesheet" type="text/css" href="http://192.168.2.135:8081/arcgis_js_api/library/3.9/3.9/js/dojo/dijit/themes/tundra/tundra.css"/>
<link rel="stylesheet" type="text/css" href="http://192.168.2.135:8081/arcgis_js_api/library/3.9/3.9/js/esri/css/esri.css" />
<script type="text/javascript" src="http://192.168.2.135:8081/arcgis_js_api/library/3.9/3.9/init.js"></script>
<style>
#ww {
top: 20px;
color: #444;
height: auto;
font-family: arial;
right: 100px;
margin: 5px;
padding: 10px;
position: absolute;
width: 115px;
z-index: 40;
border: solid 2px #666;
border-radius: 4px;
background-color: #fff;
}
#info{
top: 100px;
color: #444;
height:auto;
font-family: arial;
right: 100px;
margin: 5px;
padding: 10px;
position: absolute;
width: 200px;
z-index: 40;
border: solid 2px #666;
border-radius: 4px;
background-color: #fff;
}
html, body, #MyMapDiv {
padding:0;
margin:0;
height:100%;
}
button {
display: block;
}
</style>
<script type="text/javascript" src="dojo/jsapi_vsdoc10_v38.js"></script>
<script type="text/javascript">
dojo.require("esri.map");
dojo.ready(function () {
var MyMap = new esri.Map("MyMapDiv");
var myTiledMapServiceLayer = new esri.layers.ArcGISTiledMapServiceLayer("http://192.168.2.135:6080/arcgis/rest/services/huananqiepian/huaian/MapServer");
//var point = new esri.geometry.Point(118.0605760000, 36.8424320000, MyMap.spatialReference);
//地图首次加载显示的位置和放大级别
//MyMap.centerAndZoom(point, 8);
MyMap.addLayer(myTiledMapServiceLayer);

//创建图层
var graphicLayer = new esri.layers.GraphicsLayer();
//把图层添加到地图上
MyMap.addLayer(graphicLayer);

//设置标注的经纬度
//方法一
//修改此处的xy坐标 设置成自定义的xy
//var x = document.getElementById(x).value;
//var y = document.getElementById(y).value;
//alert(x);
var pt = new esri.geometry.Point(118.0605760000, 36.8424320000, MyMap.spatialReference);
//方法二
// var pt = new esri.geometry.geographicToWebMercator(new esri.geometry.Point({
// "x": 118.0605760000,
// "y": 36.8424320000,
// "spatialReference": { "wkid": 102113 }
// }));

//设置标注显示的图标
//var symbol = new esri.symbol.SimpleMarkerSymbol();
var symbol = new esri.symbol.PictureMarkerSymbol("images/red.png", 25, 25);

//要在模版中显示的参数
var attr = { "address": "山东省淄博市张店区" };

//创建模版
var infoTemplate = new esri.InfoTemplate("标题", "地址:${address}");
//创建图像
var graphic = new esri.Graphic(pt, symbol, attr, infoTemplate);
//把图像添加到刚才创建的图层上
graphicLayer.add(graphic);

//注册事件,注意事件名大小写敏感
//鼠标在地图上移动地图坐标的事件
dojo.connect(MyMap, "onMouseMove", showCoordinates);
//鼠标按下后,拖动地图显示坐标的事件
dojo.connect(MyMap, "onMouseDrag", showCoordinates);
});

//显示地图坐标
function showCoordinates(evt)
{
var mp = evt.mapPoint;
dojo.byId("info").innerHTML = "坐标:" + mp.x + " , " + mp.y;
}
function xhd(){
window.showModalDialog("xhdtj.jsp");
}
function zdxhd(){
window.showModalDialog("zdxhd");
}
<!--xueqijun 9.13快捷连击三次添加信号灯-->
function clickThreeTime(){
var counter=document.form.counter;
var time = document.form.time;
if( counter.value == "0") time.value = new Date().getSeconds() ;
counter.value = parseInt(counter.value)+1;
if( counter.value == "3") {
if((new Date().getSeconds()-parseInt(time.value))>1);
//alert("超时");
else alert("是否要在此位置添加信号灯");//连续点击三次小于1庙钟有效
counter.value="0";
}
}
</script>
</head>
<body >
<div id="MyMapDiv"></div>
<div id="ww">
<div>编辑</div>
<!--在此设置可以弹出的可编辑的框体xue2016.9.12-->
<input type="button" value="添加信号灯" onclick="xhd()">

<!--<input type="button" value="自动添加信号灯" onclick="zdxhd()"> -->

</div>
<p id="info"></p>
</body>
</html>
其中如果被注释的放大等级取消注释就可以显示自定义的标示,但是无法显示地图;求解!
...全文
468 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
死神8小爱 2016-10-23
  • 打赏
  • 举报
回复
网上有esri.toolbars.draw的例子。。。可以对比一下

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧