我做了一些调试,发现了这样的语句:
$(this)[widget.widgetName](widget.attributes);
其中 widget.widgetName = 图表
jquery中这句话的含义是什么?
在堆栈中我看到jquery_ui调用了jquery-ui的_createwidget
为什么createwidget会被调用?
问候, 约西
最佳答案
$(this)[widget.widgetName]
使用方括号表示法来引用值为 widget.widgetName
值的属性。有关方背和“点符号”之间的比较,请参阅 MDC article .
正如您所说,widget.widgetName
是 chart
,它指的是:
$(this).chart
然后 (widget.attributes);
只是调用该函数并将 widget.attributes
作为第一个也是唯一的参数传递:
$(this).chart(widget.attributes);
至于“为什么createwidget会被调用?” chart()
函数必须隐式(通过另一个函数)或显式调用它。
关于jquery语句-选择问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10514111/