jQuery   发布时间:2022-04-19  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了jquery – 从外部窗口小部件访问窗口小部件实例大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
这是一个简单的widget mock:
(function ($) {

    $.widget("ui.myDummyWidget",{

        options: {
        },_create: function () {
        },hide: function () {
            this.element.hide();
        },_setOption: function (key,value) {
            $.Widget.prototype._setOption.apply(this,arguments);
        },destroy: function () {
            $.Widget.prototype.destroy.call(this);
        }

    });

} (jQuery));

它只添加一个方法隐藏,您可以调用它来隐藏元素。如果从小部件中完成,就很容易

this.hide();

但是常见的情况是您想从外部调用窗口小部件实例上的方法(Ajax更新或其他外部事件)

那么访问窗口小部件实例的最佳方法是什么?一种方法是将元素的引用添加到元素,丑陋的…

_create: function () {
    this.element[0].widget = this;
},

然后你可以从外面访问它

this.dummy = $("#dummy").myDummyWidget();
this.dummy[0].widget.hide();

解决方法

窗口小部件引擎已经做了你想要的:它在内部调用 data()来关联窗口小部件及其各自的元素:
$("#dummy").myDummyWidget();
// Get associated widget.
var widget = $("#dummy").data("myDummyWidget");
// The following is equivalent to $("#dummy").myDummyWidget("hide")
widget.hide();

更新:从jQuery UI 1.9起,the key becomes the widget’s fully qualified name,with dashes instead of dots.因此,上面的代码变成:

// Get associated widget.
var widget = $("#dummy").data("ui-myDummyWidget");

在1.9中仍然支持使用不合格的名称,但已被弃用,支持将在1.10中删除

大佬总结

以上是大佬教程为你收集整理的jquery – 从外部窗口小部件访问窗口小部件实例全部内容,希望文章能够帮你解决jquery – 从外部窗口小部件访问窗口小部件实例所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: