【问题标题】:jQuery plugin accessjQuery插件访问
【发布时间】:2011-05-17 17:23:37
【问题描述】:

我正在用 jQuery 做一个 youtube 播放器,我把它做成一个 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');

我该如何应用这个??

【问题讨论】:

    标签: javascript jquery plugins


    【解决方案1】:

    请参阅jQuery Plugin Authoring Guide 的“有状态插件”部分的“向小部件添加方法”部分。

    【讨论】:

    • +1 哦,@Exos 永远记得...“jQuery.fn 发音为 jQuery effin'”
    • 轮子,所以我不要答应。我做到了:pastebin.com/TDLFLh6V 现在 $('#obj').UplayList('play');或 $('#obj').UplayList('setVolume',75);作品!使用数据我保存播放器的 ID(唯一并在运行时生成)。谢谢!
    • 我没有看到“方法部分”,唯一提到“有状态插件”(这似乎是 OP 正在搜索的内容)是在 jQuery UI Widget Factory section 中,但我没有
    • @PierredeLESPINAY 他们似乎重写了该指南:(
    • 我也是这么想的。仍在寻找不依赖 jQuery UI 的解决方案。
    猜你喜欢
    • 1970-01-01
    • 2015-03-06
    • 1970-01-01
    • 1970-01-01
    • 2012-04-25
    • 2023-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多