jQuery: alternare gli URL dei link al click del mouse

Come alternare gli URL dei link con jQuery senza utilizzare il metodo deprecato .toggle().

jQuery di Gabriele Romanato

Una richiesta fatta su un forum di supporto a jQuery prevedeva il caso in cui l'URL di un link HTML doveva alternarsi al click sul link stesso. La soluzione proposta suggeriva l'uso del metodo .toggle(). Ma questo metodo è stato deprecato.

In realtà la soluzione è molto più semplice:


var $link = $( "#link" ),
	origHref = $link.attr( "href" ),
	newHref = "http://test.localhost";
	
	$link.data( "orig-href", origHref );
	
	$link.click(function() {
		var href = $( this ).attr( "href" );
		if( href == $( this ).data( "origHref" ) ) {
			$( this ).attr( "href", newHref );
		} else {
			$( this ).attr( "href", origHref );
		}
	});

In pratica occorre semplicemente confrontare due URL, ossia quello iniziale e quello da sostituire, alternandoli di volta in volta.