我希望在用户点击后显示区域标记名称。不幸的是,当我使用下面的代码来获取地图区域时,我得到了未定义的obiekt名称。这很奇怪,因为对于文本框'kot',它运作良好。
<script>
function metoda(obiekt)
{
alert(obiekt.name); //Here I get undefined!
}
</script>
<input type='text' value='kot' name='das' onclick='metoda(this);'></input>
<map name='mapkama'>
<area
name='AE'
shape='POLY'
coords='285,87,287,90,288,87,285,87'
href='#'
title=''
onclick='metoda(this); return false;'>
</map>
<img usemap="#mapkama" src='http://myimage.com/image'>
如何从metoda功能显示区域名称?
答案 0 :(得分:1)
以下代码会正确返回名称的值。
<script>
function metoda(obiekt)
{
alert(obiekt.name);
}
</script>
<input type='text' value='kot' name='das' onclick='metoda(this);'></input>
<img src="planets.gif" width="145" height="126" alt="Planets" usemap="#planetmap" />
<map name="planetmap">
<area name='AE1' shape="rect" coords="0,0,82,126" href="#" alt="Sun" onclick='metoda(this); return false;'/>
</map>
唯一不同的是,我使用的是矩形而你使用的是poly。你能检查一下是否使用rect或circle帮助你。
答案 1 :(得分:0)
使用jquery你可以通过
实现这一点<script type="text/javascript">
function metoda(obiekt)
{
alert(obiekt.getAttribute("name"));
}
</script>
<input type='text' value='kot' name='das' onclick='metoda(this);'></input>
<img src="planets.gif" width="145" height="126" alt="Planets" usemap="#planetmap" />
<map name="planetmap">
<area name='AE1' shape="rect" coords="0,0,82,126" href="#" alt="Sun" onclick='metoda(this); return false;'/>
</map>