FullCalendar: при наведении курсора мыши, как сказать, что верхний левый угол события завис? - PullRequest
0 голосов
/ 01 марта 2012

Я использую FullCalendar v1.5.3 от Адама Шоу.Я получил почти все, чтобы работать с ним, примите, что я пытаюсь сделать «простой» всплывающую подсказку и не могу получить то, что я ищу.

Я пытаюсь получить левую сторону моеговсплывающая подсказка должна совпадать с левой стороной события, над которым я наведен.И я пытаюсь заставить всплывающую подсказку всплыть над событием.

Код, который я сейчас использую, появляется для того, чтобы дать мне «случайное» место слева и сверху от того места, где мышь вошла в событие FullCalendar.

Мой текущий код выглядит следующим образом:

    eventMouseover: function (event, jsEvent, view) {
            var eventInfo = $("#EventInfoTip");
            var mousex = jsEvent.pageX + 20; //Get X coodrinates
            var mousey = jsEvent.pageY + 20; //Get Y coordinates
            var tipWidth = eventInfo.width(); //Find width of tooltip
            var tipHeight = eventInfo.height(); //Find height of tooltip

            //Distance of element from the right edge of viewport
            var tipVisX = $(window).width() - (mousex + tipWidth);
            //Distance of element from the bottom of viewport
            var tipVisY = $(window).height() - (mousey + tipHeight);

            if (tipVisX < 20) { //If tooltip exceeds the X coordinate of viewport
                mousex = jsEvent.pageX - tipWidth - 20;
            } if (tipVisY < 20) { //If tooltip exceeds the Y coordinate of viewport
                mousey = jsEvent.pageY - tipHeight - 20;
            }
            //Absolute position the tooltip according to mouse position
            eventInfo.css({ top: mousey, left: mousex });
            eventInfo.show(); //Show tool tip
        } //end full calendar mouseover event

EventInfoTip - это простой диапазон на странице:

<span id = "EventInfoTip">
I'm over an event
</span>

Возможно ли получить верхнюю и левую часть текущего события?зависла?

1 Ответ

3 голосов
/ 01 марта 2012

Из документов: «В функции обратного вызова this установлен в элемент div события».

Таким образом, вы можете использовать $ (this) .offset (), чтобы получить расположение div события на странице.

var elOffset= $(this).offset(), offsetLeft=elOffset.left,  offsetTop=elOffset.top
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...