在Html中,给图像使用map标签,可以给图像的某个部分建立超连接,用法如下:
其中,坐标coords对各个shape的解释如下:
shape="rect" coords="x1,y1,x2,y2" // (x1,y1)=Upper Left, (x2,y2)=Lower Right
即,当shape是矩形时,coords表示矩形左上及右下(x2, y2)的坐标
shape="circle" coords="x,y,r" // (x,y)=Center, r=Radius
即,当shape是圆形时,coords表示圆中心点坐标(x, y)及半径
shape="poly" coords="x1,y1,x2,y2,x3,y3..." // (x1,y1>=First Corner, (x2,y2)=Second Corner, ...
即,当shape是poly多边形时,coords表示多边形所有顶点的坐标(x1,y1),(x2,y2),(x3,y3)...
注意:以上所有坐标都是相对于图形img.gif左上脚坐标而言的
以下是一个例子:
-------------------------------------------------------------------------------------------------------------
HTML元素 - map
包含客户端图像映射的坐标数据。
Contains coordinate data for client-side image maps.
所谓图像映射,就是带有预先定义区域的图像,这些区域包含了指向其它文档或锚的链接。例如,你可以在一副太阳系的图像上创建用户点击后可浏览不同星球的链接。
map 对象由 IMG 元素的 USEMAP 属性引用,格式如下:
MAP 元素包含一组定义图像中链接区域的 AREA 元素。
这个问题很有意思。
想了想,用asp.net加数据库是可以实现的。
主要利用的技术是通过CSS可以做到对div进行绝对定位和层叠,然后再结合AjaxControlToolkit里面的PopupControlExtender控件可以做到鼠标移动到控件上弹出一个图层,基本就可以解决你的问题了
这里面最麻烦的问题是,你需要把你的线路图合理分成线路不交叉的几层,,然后进行合理的切割,导出成PNG或者gif的背景透明的图片,然后要在网页中组合出来,这又需要知道每个图片的绝对坐标(这可以通过CSS中的top和left)以及应该在第几层(CSS中的z-index),把这些数据都记录在数据库中。
针对线路的几种状态,比如,已检修,未检修,正常,有问题等等需要用不同的颜色来表示,所以把线路图的切割成透明图片的工作要重复和状态数量相同的次数。
数据都放入数据库了,就可以用Repeater来读取并生成每段线路的div了。
基本思路就是这样,祝你好运,需要帮助请M我
首先我不明白你要说的是什么意思,我猜测下,你是不是你们单位的系统都是用一个图片表示的,如果说检修过,这个图片上的东西可以标志下,提示别人这个已经检修。如果说这个系统 你还没有开发,那很简单,如果说已经开发,那就看你这个系统的设计了。个人觉得这个问题很好解决。因为我目前从事的项目我是用silvelight做的(联通的),我实现显示设备当前状态,如果出现故障会实时发出告警(socket)。
在图上加mark之类标识下