Obsługa zdarzeń dla AJAX-wego contentu za pomocą funkcji delegate(jQuery)

Czasami możemy się spotkać z sytuacji , że ładujemy AJAX-owo jakiś kontent na przykład kilka linków i chcemy aby po zdarzeniu – przypuśćmy hover pojawił się alert z wiadomością. Dotychczas jQuery umożliwiało wykonanie takiej operacji za pomocą funkcji live, jednak od wersji 1.9 nie będzie ona już wspierana.

Z pomocą przychodzi funkcja delegate, dla przykładu:

 $("body").delegate(".center_block", "hover", function ( event ) { 	 
    	  if (event.type == 'mouseenter') {
    		alert("Najechano mnie");

    	    } else {
    	    	 alert("Jestem wolny!!");
    	    }
    	});

jQuery określa następujący typ argumentów:

// jQuery 1.4.3+
$(elements).delegate( selector, events, data, handler );
// jQuery 1.7+
$(elements).on( events, selector, data, handler );

To wszystko , dla każdego elementu  .center_block  w body, nieważne czy będzie dostępny czy załadowanych przez AJAX zostanie obsłużony nasz event.

Więcej informacji na stronie: http://api.jquery.com/delegate/

ZOSTAW ODPOWIEDŹ

Please enter your comment!
Please enter your name here

Loading Facebook Comments ...