有没有更好的方法来运行jQuery UI小部件方法?

时间:2011-03-22 23:10:25

标签: jquery user-interface widget

假设你创建一个名为my_widget的小部件并在my_div上实例化它:

jQuery('#my_div').my_widget()

假设my_widget有一个do_something方法。根据小部件工厂文档,您将访问do_something,如:

jQuery('#my_div').my_widget('do_something', ['arg1','arg2'])

这被证明非常麻烦。这很容易出错,因为如果由于某些原因my_div还没有一个小部件,如果你试图运行do_something,jQuery UI只会创建一个新的实例。还有更好的方法吗?

理想情况下应该有一种说法:

widget = jQuery('#my_div').my_widget('get_instance')
...
widget.do_something('arg1', 'arg2')

内置了get_instance吗?

1 个答案:

答案 0 :(得分:1)

如果您阅读jQuery Plugin Authoring,您会发现这是在插件中调用函数的标准方法,并且典型的实现无法将这些函数公开为普通方法。