ArcIMS开发-----HTML Viewer files的理解
ArcIMS 产生的文件包括: HTML文件和JavaScript文件 它们形成了HTML Viewer文件的基础.
HTML文件用来产生Webpage内容,JavaScript中的函数是用来用户和地图进行交互的。
Directory structure(目录结构)
hierarchy(层次)
preferences 参数选择
ArcIMSparam.js参数文件:
它包含一系列的影响站点外表和行为的JavaScript参数,通过改变这些参数可以进行用户的专业化定制,在这
里经常需要改动的是工具条的显示和操作,图层管理,色彩搭配和站点的图形
The HTML文件:
HTML文件大约有30个,它们定义了HTML Viewer的网页显示内容,一些用来初始化HTML Viewer,一些用来定义
HTML Viewer的框架内容,其他的用来加载表格和显示数据。
初始化时,文件的执行顺序:
可以通过指定特定的加载图层参数而不是把他们从GET_Server_INfof响应中分解来使得减少网页启动的时间。
1.
Default.htm 文件是网站的进入点。他判断客户端的浏览器是微软的还是别的,以及浏览器版本的检查,如果检
查成功,则加载Run.htm页面,它定义了两个页面,分别是 Authorize.htm和jsForm.htm,如果浏览器不支持则将
CannotRun.htm页面加载进来并且通知用户。
2. Authorize.htm文件检查安全措施是否是对这个服务采取了,如果采取了安全措施,则将登录对话框打开,用
户进行登录,Authorize.htm页面也需要调用两个Javascript文件:ArcIMSParam.js和aimsResource.js文件
一个Get_Service_Info请求发送到主地图,如果鹰眼图没有使用和主地图相同的服务,则将另外一个
Get_Service_Info请求发送来检查该服务的存在是不是符合用户的合法请求。ArcIMSParam.js文件包含许多
Viewer的参数包括主地图和鹰眼图的服务的URL。aimsResource.js文件包含不同的文本信息如消息,工具条和
标题。
3. Viewer.htm页面的加载
Viewer.htm定义了Viewer的框架页面, 这个框架通过分割Web页面为多个部分提供了一个组织结构,每个框架
都用Html文件覆盖,这里就不写那些框架了,有些框架是需要删除的,这个 Viewer需要 MapFrame和PostFrame的
显示。
4.
通过以上几步将MapFrame.htm和PostFrame.htm文件加载到合适的框架中。
加载和显示数据时使用的文件:
下面的文件调用时用来显示数据和加载窗体的。
buffer.htm
query.htm
storedquery.htm
TopFrame:
top.htm定义了TopFrame的内容,他用来显示标题和图标。
MapFrame and overview map
MapFrame.htm定义了MapFrame的内容,MapFrame显示地图图片。 在加载这个窗体时需要设置一系列的地图参数和
加载许多的JavaScript参数
overview map 包含在了MapFrame中,他在MapFrame.htm中通过动态的层叠样式在浏览器中定义
ToolFrame
Toolbar.htm 定义了他的内容,ToolFrame 包含一个来显示当前工具的工具条面板 ,Toolbar.htm检查在
ArcIMSParam.js中设定的主要的参数,并且利用JavaScript来动态生成所选择的工具。
TOCFrame
TOCFrame.htm和toc.htm定义了TOCFrame的内容,首先调用TOCFrame.htm,然后toc.htm文件来定义图层列表和图
例并将它显示出来,当图层列表显示出来后,toc.htm文件仅列出在当前比例尺下可见的图层,当比例尺改变时
toc.htm文件进行重新加载。
ModeFrame
他是由ModeFrame.htm来定义的,ModeFrame他显示当前的由Current Tool定义的点样式,当不同的工具被单击时
,样式会改变并且ModeFrame.htm会重新加载。
TextFrame
Text.htm提供他的显示内容,TextFrame的内容根据不同工具条的选择而动态改写。他显示有服务器返回的对话框
和信息,例如:Textframe显示由Identify工具获得的结果或者显示QueryTool窗体,当关联的工具选中后,其他
的HTML文件如Findform.htm,addmatch.htm,setUnits.htm和Select.htm 来填充这个页面。
Postframe:
他的内容由JsForm.htm定义, 这个窗体用于跟ArcIMS Servlet Connector通信,它通常是被影藏的。
Bottomframe
它是由Bottomframe.htm来定义的。
待续。。。。。。。。