#javascript #jquery #plugins
#javascript #jquery #Плагины
Вопрос:
Я создаю проигрыватель YouTube на jQuery, и я делаю это как плагин jQuery, например:
$.fn.extend({
uplayList: {},
CreateUplayList: function (options) {
this.each(function () {
$(this).uplayList = new $.playList(this, options);
});
}
});
Но, если я сделаю:
$('#playlist').CreateUplayList({....});
И я хочу получить доступ к экземпляру:
$('#playlist').uplayList.play();
Это не работает, в этом есть смысл, потому что $(‘#playlist’) — это селектор. Я вижу в других плагинах что-то подобное:
$('#playlist').pluginname('play');
Как я могу это применить??
Ответ №1:
Смотрите раздел «Добавление методов в виджет» раздела «Плагины с отслеживанием состояния» Руководства по разработке плагинов jQuery.
Комментарии:
1. 1 О, и @Exos всегда помни… «jQuery.fn произносится как jQuery effin ‘ «.
2. ну, так что не спрашивай меня. Я делаю это: pastebin.com/TDLFLh6V и теперь $(‘#obj’). UplayList(‘play’); или $(‘#obj’). UplayList(‘setVolume’,75); работает! используя данные, я сохраняю идентификатор проигрывателя (уникальный и сгенерированный во время выполнения). Спасибо!
3. Я не вижу «раздела методов», и единственное упоминание «плагина с отслеживанием состояния» (который, похоже, искал OP) находится в разделе jQuery UI Widget Factory , который не мне
4. @PierredeLESPINAY похоже, они переписали это руководство : (
5. Я тоже так подумал. Все еще ищу решение, не зависящее от пользовательского интерфейса jQuery.