Показать сообщение отдельно
  #7 (permalink)  
Старый 16.12.2015, 11:43
Аспирант
Отправить личное сообщение для shurik_shink Посмотреть профиль Найти все сообщения от shurik_shink
 
Регистрация: 22.05.2015
Сообщений: 35

Частично решил проблему

Для задания координат подсказки для элементов div на все div с name="div2" навешивается Listener который вызывает функцию mousemove_xy в которой собственно и задаются координаты бокса с текстом подсказки.

Но в моем случае, для того чтобы получить handle всплывающей подсказки я испольую его id. И пока у меня только один элемент div и один <span id="span2"> на странице.

<div id="div2" name="div2" class="div1 photo">
<img src="saperavi-severnyj-250x383.jpg" class="img1"/>
<span id="span2">Сорт винограда 'Саперави северный'</span>
</div>



<script>
var divs=document.getElementsByName("div2");
for (i=0; i<divs.length; i++){
	divs[i].addEventListener("mousemove", mousemove_xy);
}
 
function mousemove_xy(event){
var item2 = document.getElementById("span2");		
item2.style.left=event.offsetX+10;
item2.style.top=event.offsetY+10;
}
</script>



Как определить для какого div выполняется функция - что бы потом определить просто дочерний span, а не искать его по id?

Полагаю нужно использовать оператор this, но как не понятно

Напрямую span = this.getElementById("span2"); не работает
Ответить с цитированием