интро
Привет,
Я пытаюсь разработать некоторый плагин или / и объект в javascript, который будет контролировать некоторые свойства некоторого объекта. Он также будет использовать jQuery, чтобы облегчить разработку.
Идея
Это псевдокод, чтобы дать вам идею, поскольку я не могу действительно описать это по-английски правильными словами, невозможно зайти и использовать Google, чтобы узнать, что я хочу использовать ( и учиться).
I will have plugin (maybe object?) with some variables and methods:
plugin hideshow(startupconfig){
var c, //collection
add: function(what){
c += what;
},
do: function(){
c.show().hide().stop(); //example code
}
}
и я буду использовать его таким образом (или вроде ):
var p = new Plugin();
p
.add($('p#simple'))
.add($('p#simple2'))
.do();
примечание
Я на самом деле не ищу учебники для плагинов jQuery - это больше похоже на использование одного объекта в документе в javascript, jQuery упоминается только потому, что он будет использоваться для изменения dom и упрощения селекторов, плагин jQuery может быть только для эта маленькая функция add
.
Я ищу что-нибудь, что будет лежать поверх моего документа и вызывать функции из itselft на основе таймера, действий пользователя или чего-то еще.
проблемы
- Я действительно не знаю, с чего начать конструирование этого объекта / плагина
- Я не совсем уверен, как поддерживать одну переменную, которая является коллекцией объектов jQuery (что-то вроде
$('#simple, #simple2');
)
- Возможно, я бы хотел использовать jQuery с
$.fn.addToPlugin
для использования цепочки объектов, но это должно быть просто (на самом деле просто each( p.add($(this)); )
)
- Моя самая большая проблема, очевидно, в том, что я не могу объяснить, чего я хочу.
Надеюсь, у меня есть смысл, идеи, ссылки или советы по достоинству.
редактировать
Это что-то вроде этого, я просто не могу понять, как это называется / используется в javascript - пример в псевдо-PHP:
class Foo() {
$collection;
$timer, $action;
function onTimer(){
foreach($collection as $e){
$e->someAction();
}
}
function add($e){
$collection[] = $e;
}
function start(){
$timer->start( onTimer() );
}
function->stop(){
$timer->stop();
}
}
var f = new Foo();
Foo.add(something);
Foo.start();