Отслеживание положения мыши работает только в webkit

#javascript #jquery

#javascript #jquery

Вопрос:

Я создаю / показываю тег span в позиции пользователя в теге div:

 var parentOffset = $(this).parent().offset(); 
$("#test").css({"left" : event.pageX - parentOffset.left - 20, "top":event.pageY - parentOffset.top}).fadeIn("fast");
  

Это отлично работает в браузерах webkit, таких как Chrome, Opera и т. Д.
Firefox даже не показывает тег span, ничего не происходит, консоль даже не выводит коды ошибок.

Есть ли решение для всех браузеров? Пока спасибо

Упрощенный jsfiddle: http://jsfiddle.net/q7PSs /

Комментарии:

1. Пожалуйста, приведите пример в JSFiddle или в другом онлайн-инструменте.

2. вероятно, вам следует нормализовать событие e = jQuery.event.fix(e);

3. Я создал скрипку, и она снова работает в webkit, но не в FF.

Ответ №1:

Если вы посмотрите в консоль JS в Firefox, вы увидите, что при каждом нажатии появляется ошибка : ReferenceError: event is not defined . Вам нужно передать объект события обработчику события.

http://jsfiddle.net/q7PSs/1/

 $("#par").click(function(event) {
   ...
  

Комментарии:

1. Спасибо, это сработало — все еще не понимаю, почему я ничего не видел. Ну, неважно

2. Ах да, я вижу, вы упомянули об этом. Я думаю, проверьте в консоли FF, что кнопка «JS» переключена, а элемент «ошибки» отмечен в раскрывающемся списке?