Использовать координаты мыши при наведении мыши на функцию ввода

У меня есть страница сервера Java, которая должна выполнять функцию showPeopleDetails, когда пользователь наводит курсор на тег a. showPeopleDetails - это функция javascript в отдельном js-файле, который импортируется платформой. showPeopleDetails должен отображать всплывающее окно "Воздушный шар" над тегом a. Каким-то образом функция выполняется только для первого a-тега, но не для других! Это фрагмент HTML:

| <a href="javascript:void(0);" class="PeopleLink LinkColorBlackDark" onmouseover=    "showPeopleDetails('<%=userUnique %>', event.clientX, event.clientY)" onmouseout="hidePeopleDetailsTimed()"></a>

Это моя функция JavaScript ShowPeopleDetails:

function showPeopleDetailsNow(UserId, x, y){
   var vpd = document.getElementById("PeopleDetails");
   if ( vpd != null ) {
       getMousePosition();
       vpd.style.top= x +10 + $(document).scrollTop(); //mouseX and mouseY are defined globally
       vpd.style.left= y +10;
       vpd.style.display="block";
   }
}

Нет ничего плохого в функции showPeopleDetails, которую я протестировал, и она работает в других частях сайта. Но когда я добавляю event.clientX и event.clientY, всплывающее окно отображается только один раз. Мне нужно только разработать для Internet Explorer 8, поэтому совместимость браузера не является проблемой. Помощь очень ценится!

1 ответ

Решение

Вместо передачи в вызов функции event.clientX и event.clientY попробуйте

<a href="javascript:void(0);" class="PeopleLink LinkColorBlackDark" onmouseover=    "showPeopleDetails('<%=userUnique %>', event)" onmouseout="hidePeopleDetailsTimed()"></a>

function showPeopleDetailsNow(UserId, event){
  event = event || window.event;
  var x = event.clientX, y = event.clientY;

   var vpd = document.getElementById("PeopleDetails");
   if ( vpd != null ) {
       getMousePosition();
       vpd.style.top= x +10 + $(document).scrollTop(); //mouseX and mouseY are defined globally
       vpd.style.left= y +10;
       vpd.style.display="block";
   }
}
Другие вопросы по тегам