2010-07-22 4 views
2

Я бы хотел показать название тега области после щелчка на нем. К сожалению, когда я использую код ниже для области карты, я получаю undefined имя obiekt name. Это странно, потому что для textbox 'kot' он работает хорошо.Получить имя тега области HTML из Javascript?

<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

к сожалению, область не может быть нажата, если он не имеет видимый элемент. –

+0

@rob Я добавил часть с видимым элементом, надеюсь, что это поможет вам помочь мне;) –

ответ

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> 
+0

Я не могу использовать JQuery, только JS –

+1

hi Я отредактировал свой ответ: 'obiekt.getAttribute (« name »)' должен это сделать. –

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. Можете ли вы проверить, поможет ли вам использование прямоугольника или круга.

+0

это все еще возвращает undefined. –

+0

Вы имеете в виду для rect, он возвращает undefined? Одна вещь, которую я заметил, что координаты полиформа должны быть правильными, чтобы получить координаты щелчка –

+0

@Sachin Shanbhag То же, что и для rob - undefined. Я обновил свой исходный код до сценария реальной жизни, который у меня есть, поэтому вы сможете легко его воспроизвести. –

 Смежные вопросы

  • Нет связанных вопросов^_^