Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Po stronie przeglądarki _ [JQUERY]Wysyłanie wielu żądań ajax.

Napisany przez: Croos22 18.08.2019, 15:51:31

Witam.

Pobieram z bazy danych informacje do tooltip po najechaniu na poszczególne elementy. Wszystko działa poprawnie dla potencjalnego użytkownika strony lecz bardzo to obciąża stronę. Po najechaniu poruszając kursorem myszy cały czas wykonuje zdarzenie mousemove a co za tym idzie ajax pobiera dane. Ma ktoś jakieś propozycje? Chciałbym uzyskać, że gdy najadę na danego div-a raz poprało dane bez względu na to czy kursor zdążył opuścić okno i pobrał je ponownie ale dopiero po opuszczeniu i powrocie. Pożądam pomysłu nie rozwiązania. Według kodu, który napisałem jest to oczywiste działanie.

Kod
$('.okno').bind('mousemove', function(ev)
{
    var i = $(this).attr('i');
    xm = ev.pageX-$('.okno').offset().left;
    ym = ev.pageY-$('.okno').offset().top;
    $( '#tip' ).css( "visibility", "visible" );
    $( '#tip' ).css( "top", (ym+15)+"px" );
    $( '#tip' ).css( "left", (xm+10)+"px" );
    $.ajax({
        url: 'tip.php',
        type: 'POST',
        data: 'i='+i,
        success: function(msg)
        {
        $('#tip').html(msg);
        }
    });
});

Napisany przez: trueblue 18.08.2019, 16:16:43

Po prostu użyj zdarzenia mouseenter.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)