Javascript 图像地图顶部的文本
目前,我有一个图像与图像地图。有没有一种方法可以让我编写一些JavaScript代码,使用区域名称作为变量来显示它的实际内容?所有文本和区域名称都已在数据数组中 例如,如果该区域命名为Area1,则其内部将包含文本Text1,以此类推 我为什么要这么做?对我来说,把上面的名字打印出来比较容易 编辑:图像映射的示例Javascript 图像地图顶部的文本,javascript,jquery,html,css,imagemap,Javascript,Jquery,Html,Css,Imagemap,目前,我有一个图像与图像地图。有没有一种方法可以让我编写一些JavaScript代码,使用区域名称作为变量来显示它的实际内容?所有文本和区域名称都已在数据数组中 例如,如果该区域命名为Area1,则其内部将包含文本Text1,以此类推 我为什么要这么做?对我来说,把上面的名字打印出来比较容易 编辑:图像映射的示例 <img src="planets.gif" width="145" height="126" alt="Planets" usemap="#planetmap"> &l
<img src="planets.gif" width="145" height="126" alt="Planets" usemap="#planetmap">
<map name="planetmap">
<area shape="rect" coords="0,0,82,126" href="sun.htm" alt="Sun">
<area shape="circle" coords="90,58,3" href="mercur.htm" alt="Mercury">
<area shape="circle" coords="124,58,8" href="venus.htm" alt="Venus">
</map>
不是很精确,但它可以作为进一步改进的良好基础 HTML:
<div id="map">
<img src="http://placehold.it/145x126" width="145" height="126" alt="Planets" usemap="#planetmap">
</div>
<map name="planetmap">
<area shape="rect" coords="0,0,82,126" href="sun.htm" alt="Sun" data-name="Sun">
<area shape="circle" coords="90,58,3" href="mercur.htm" alt="Mercury" data-name="Mercury">
<area shape="circle" coords="124,58,8" href="venus.htm" alt="Venus" data-name="Venus">
</map>
#map {
position:relative
}
.map_title {
position:absolute;
}
$(function() {
$('area').each(function(){
var txt=$(this).data('name');
var coor=$(this).attr('coords');
var coorA=coor.split(',');
var left=coorA[0];
var top=coorA[1];
var $span=$('<span class="map_title">'+txt+'</span>');
$span.css({top: top+'px', left: left+'px', position:'absolute'});
$span.appendTo('#map');
})
})
JQ:
<div id="map">
<img src="http://placehold.it/145x126" width="145" height="126" alt="Planets" usemap="#planetmap">
</div>
<map name="planetmap">
<area shape="rect" coords="0,0,82,126" href="sun.htm" alt="Sun" data-name="Sun">
<area shape="circle" coords="90,58,3" href="mercur.htm" alt="Mercury" data-name="Mercury">
<area shape="circle" coords="124,58,8" href="venus.htm" alt="Venus" data-name="Venus">
</map>
#map {
position:relative
}
.map_title {
position:absolute;
}
$(function() {
$('area').each(function(){
var txt=$(this).data('name');
var coor=$(this).attr('coords');
var coorA=coor.split(',');
var left=coorA[0];
var top=coorA[1];
var $span=$('<span class="map_title">'+txt+'</span>');
$span.css({top: top+'px', left: left+'px', position:'absolute'});
$span.appendTo('#map');
})
})
$(函数(){
$('area')。每个(函数(){
var txt=$(this.data('name');
var coor=$(this.attr('coords');
var coorA=coor.split(',');
左var=coorA[0];
var-top=coorA[1];
变量$span=$(''+txt+'');
$span.css({top:top+'px',left:left+'px',position:'absolute'});
$span.appendTo(“#map”);
})
})
不是很精确,但它可以作为进一步改进的良好基础
HTML:
<div id="map">
<img src="http://placehold.it/145x126" width="145" height="126" alt="Planets" usemap="#planetmap">
</div>
<map name="planetmap">
<area shape="rect" coords="0,0,82,126" href="sun.htm" alt="Sun" data-name="Sun">
<area shape="circle" coords="90,58,3" href="mercur.htm" alt="Mercury" data-name="Mercury">
<area shape="circle" coords="124,58,8" href="venus.htm" alt="Venus" data-name="Venus">
</map>
#map {
position:relative
}
.map_title {
position:absolute;
}
$(function() {
$('area').each(function(){
var txt=$(this).data('name');
var coor=$(this).attr('coords');
var coorA=coor.split(',');
var left=coorA[0];
var top=coorA[1];
var $span=$('<span class="map_title">'+txt+'</span>');
$span.css({top: top+'px', left: left+'px', position:'absolute'});
$span.appendTo('#map');
})
})
JQ:
<div id="map">
<img src="http://placehold.it/145x126" width="145" height="126" alt="Planets" usemap="#planetmap">
</div>
<map name="planetmap">
<area shape="rect" coords="0,0,82,126" href="sun.htm" alt="Sun" data-name="Sun">
<area shape="circle" coords="90,58,3" href="mercur.htm" alt="Mercury" data-name="Mercury">
<area shape="circle" coords="124,58,8" href="venus.htm" alt="Venus" data-name="Venus">
</map>
#map {
position:relative
}
.map_title {
position:absolute;
}
$(function() {
$('area').each(function(){
var txt=$(this).data('name');
var coor=$(this).attr('coords');
var coorA=coor.split(',');
var left=coorA[0];
var top=coorA[1];
var $span=$('<span class="map_title">'+txt+'</span>');
$span.css({top: top+'px', left: left+'px', position:'absolute'});
$span.appendTo('#map');
})
})
$(函数(){
$('area')。每个(函数(){
var txt=$(this.data('name');
var coor=$(this.attr('coords');
var coorA=coor.split(',');
左var=coorA[0];
var-top=coorA[1];
变量$span=$(''+txt+'');
$span.css({top:top+'px',left:left+'px',position:'absolute'});
$span.appendTo(“#map”);
})
})
您正在使用谷歌地图API吗?或者地图盒等等?我都不用。我使用的是HTML图像映射。好的,这是某种API吗?你有一些可以分享的代码吗?^API lol这条评论让我很困惑,我不确定你需要提供什么浏览器支持,但如果你的用户不是来自第三世界国家或养老院,你通常可以用CSS(没有区域地图)来做这件事。你在使用谷歌地图API吗?或者地图盒等等?我都不用。我使用的是HTML图像映射。好的,这是某种API吗?你有一些可以分享的代码吗?^API lol这条评论让我很困惑,我不确定你需要提供什么样的浏览器支持,但是如果你的用户不是来自第三世界国家或养老院,你通常可以用CSS(没有区域图)来做这件事。非常感谢。这正是我想做的。最后一件事,你知道如何使它自动定位吗?这样就可以放在边界内了。示例:。为此,名称超出了边界:\n而其他一些名称仅位于1个位置:(请尝试以下操作:。适用于矩形。非常感谢。它完全符合我的要求。不过,最后一件事是,您知道如何使其自动定位吗?以使其适合边框内。例如:。为此,名称超出边框:\n而其他一些名称仅位于一个位置:(请尝试以下操作:。适用于矩形。)