Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Позиционировать сообщение относительно курсора. (https://javascript.ru/forum/misc/83586-pozicionirovat-soobshhenie-otnositelno-kursora.html)

рони 18.01.2022 18:15

Ubivectel,
document.addEventListener("click", (event) => {
    let target =  event.target;
    if (target = target.closest('.K_copy')) {
        let top = event.pageY + 10 + 'px';
        let left = event.pageX + 10 + 'px';

        target = target.closest('.KIDE_msg_top')
        let clon = target.cloneNode(true);
        clon.querySelectorAll(".KIDE_quote").forEach(el => el.remove());
        let text = clon.textContent;
        navigator.clipboard.writeText(text);

        $("#K_copy").css({top, left}).show(400, function () {

            setTimeout(function () {
                $("#K_copy").hide(300);
            }, 800);
        });
    }
});


далее сами уточняйте

Ubivectel 19.01.2022 05:17

Долго не мог найти элемент, у него обязательно должно быть абсолютное позиционирование. Корректировка координат в скрипте и немного стилей, все выглядит как надо, спасибо! :thanks:

рони 19.01.2022 07:55

Ubivectel,
обычно нужна пара родитель position: relative; сам элемент position: absolute; и клик лучше ставить на родителя а не document.

Ubivectel 19.01.2022 15:03

<span class="K_copy"><i class="fa fa-clipboard" title="Копировать" aria-hidden="true"></i></span>


Так?

рони 19.01.2022 15:18

Ubivectel,
блок в котором все сообщения будет родителем, а где-то в конце этого блока скрытый блок.


Часовой пояс GMT +3, время: 22:45.