Η μέθοδος off στο jQuery
Η αποδέσμευση γεγονότων, που έχουν δεσμευτεί μέσω της
on,
πραγματοποιείται με τη βοήθεια της μεθόδου
off.
Ως πρώτη παράμετρο δέχεται τον τύπο του γεγονότος
(για παράδειγμα, 'click'), και ως δεύτερη - το όνομα
της συνάρτησης που πρέπει να αποδεσμευτεί.
Ας εξετάσουμε το ακόλουθο παράδειγμα. Ας υποθέσουμε ότι έχουμε τον ακόλουθο κώδικα HTML:
<ul>
<li>κείμενο</li>
<li>κείμενο</li>
<li>κείμενο</li>
</ul>
Στο CSS έχει οριστεί ένα στυλ για την ετικέτα li:
li {
width: 100px;
cursor: pointer;
}
Ας κάνουμε έτσι ώστε μετά από το πρώτο
κλικ στο li, το γεγονός να
αποδεσμεύεται από αυτό:
$('li').on('click', function() {
$(this).append('!');
$(this).off('click', func);
});
Πατήστε σε στοιχεία της λίστας. Θα δείτε ότι upon επαναλαμβανόμενου
πατήματος στο ίδιο στοιχείο της λίστας δεν συμβαίνει τίποτα, αφού
η συνάρτησή μας func μετά την εκτέλεση της μεθόδου
append
αποδεσμεύεται με τη μέθοδο off.
Δεσμεύστε σε όλους τους συνδέσμους ένα γεγονός -
όταν ο δείκτης του ποντικιού περνάει πάνω από έναν σύνδεσμο, στο
τέλος του κειμένου του προστίθεται το href του σε παρενθέσεις.
Μετά το πρώτο πέρασμα του δείκτη πάνω από έναν σύνδεσμο
πρέπει να αποδεσμεύσετε από αυτόν το γεγονός, που
προσθέτει το href στο τέλος του κειμένου.
Για όλα τα πεδία εισόδου, κάντε έτσι ώστε να
εμφανίζουν την value τους όταν
πατιέται οποιοδήποτε από αυτά, αλλά μόνο στην
πρώτη φορά. Το επαναλαμβανόμενο πάτημα σε
ένα πεδίο εισόδου δεν πρέπει να προκαλεί αντίδραση.
Δίνονται παράγραφοι με αριθμούς. Με κλικ σε μια παράγραφο θα πρέπει να εμφανίζεται σε αυτήν το τετράγωνο του αριθμού, που περιέχει, αλλά μόνο στο πρώτο κλικ. Με διπλό κλικ σε μια παράγραφο ο αριθμός στην παράγραφο θα πρέπει να διπλασιαστεί, αλλά και πάλι μόνο την πρώτη φορά.