Appunti di viaggio di Chalda Pnuzig
Archivio di luglio 2009
Eseguire un evento (click, hover, focus) con jQuery
28 lug

Ogni tanto succede che abbiamo bisogno di eseguire una funzione associata ad un click senza che effettivamente il click venga dato.
Un esempio: clicca pippo!
<a href="#" id="pippo" onclick="alert('Hai cliccato su pippo!')" >clicca pippo!</a >
Ora proviamo invece a cliccare su Pluto.
<a href="#" id="pluto" onclick="jQuery('#pippo').trigger('click')">Pluto</a>
Come vedete cliccando su Pluto in questo modo viene eseguito il click di Pippo.
Ovviamente questa cosa si può fare con tutti gli eventi, tra i quali hover, focus, doubleclick, etc.
A voi il divertimento!
Javascript: Rimuovere un elemento da un array
20 lug
Ed eccoci alla classica domanda che inevitabilmente tutti ci poniamo!
Come si fa a togliere un elemento da un array in javascript?
Beh, per toglierlo dall’inizio o dalla fine si possono usare i semplici .pop() (per togliere l’ultimo) e .shift() (per togliere il primo).
Ma come fare per togliere un elemento all’interno?
Purtroppo non esiste una funzione di sistema che lo faccia, quindi dovremmo crearcela noi
Innanzi tutto vediamo come togliere un elemento da un array. Clicca qui per eseguire il codice sottostante.
var ar = ['a','b','c','d','e']; // Il nostro array
alert('Il nostro array iniziale:' + new String(ar));
var el = ar.splice(3,1); // Togliamo l'elemento alla posizione 3
alert('Il nostro elemento rimosso: '+ el);
alert('Il nostro array finale: ' + new String(ar) );
Ora sappiamo come togliere un elemento e sostituirlo, quindi creiamo una funzione prototype all’oggetto Array che tolga l’elemento alla posizione pos e lo restiuisca:
Array.prototype.removePos = function(pos) {
var el = this.splice(3,pos);
return el
};
// Esempio di utilizzo:
var ar = ['a','b','c','d','e'];
var el = ar.removePos(3); // Ora el conterrà 'e' e ar sarà ['a','b','c','e']
Se invece vogliamo ricercare un elemento el e toglierlo la funzione sarà la seguente:
Array.prototype.removeEl = function(el) {
this.splice(array.indexOf(el), 1);
};
// Esempio di utilizzo:
var ar = ['a','b','c','d','e'];
ar.removeEl('c'); // Ora ar sarà ['a','b','d','e']
Tutto qui

Commenti Recenti