Hi Próbuję autorowi plugin jQuery i muszę mieć metod dostępnych dla elementów po ich zainicjowany jako tego rodzaju obiektu, npTworzenie metody w locie
$('.list').list({some options}); //This initializes .list as a list
//now I want it to have certain methods like:
$('.list').find('List item'); //does some logic that I need
Próbowałem z
$.fn.list = function (options) {
return this.each(function() {
// some code here
this.find = function(test) {
//function logic
}
}
}
i kilka innych różnych prób, po prostu nie mogę wymyślić, jak to zrobić.
EDIT:
postaram się wyjaśnić to lepiej.
Próbuję zamienić tabelę na listę, w zasadzie jak listę na komputerze z nagłówkami kolumn i elementami sortowalnymi oraz wszystko pomiędzy nimi. Zainicjować tablicę z poleceniem
$(this).list({
data: [{id: 1, name:'My First List Item', date:'2010/06/26'}, {id:2, name:'Second', date:'2010/05/20'}]
});
.list
uczyni <tbody>
sortable i zrobić kilka innych początkowych zadań, a następnie dodaj następujące metody elementu:
.findItem(condition)
pozwoli Ci znaleźć pewien element, warunek (jak findItem('name == "Second"')
.list(condition)
wyświetli wszystkie elementy, które pasują do danego stanu
.sort(key)
sortuje wszystkie przedmioty przez dany klucz
itp
Jaki jest najlepszy sposób na zrobienie tego?
Czy możesz podać nieco więcej przykładu? Trudno powiedzieć, o co nam chodzi ... i już zrobiono [.find() '] (http://api.jquery.com/find/) :) –
możliwy duplikat [Jak utworzyć jQuery wtyczka z metodami?] (http://stackoverflow.com/questions/1117086/how-to-create-a-jquery-plugin-with-methods) – redsquare
Tytuł jest mylący, to nie są metody tworzone w locie. – Anurag