0
隨着jQuery UI的小部件工廠模式(1.8),我無法找到控件對象本身,而在鼠標事件:jQuery UI小部件鼠標事件獲取Widget狀態?
$.widget('foo.myWidget', {
_create: function() {
var $container = this.element.wrap('<div class="ui-widget" />').parent(); // Create a widget container
$container.append('<div class="myWidgetControl" />'); // Add some clickable thing
$container.find('.myWidgetControl').on('mouseup.myWidget', this._handleClick); // Watch the mouse event
},
options: { // Widget factory options object
secretKey: 'foobar'
},
_handleClick: function(e) {
// User clicked on ".myWidgetControl"
// this == DOM element .myWidgetControl
// e == the jQuery event object
// I need to get options.secretKey; how do I find it?!?
}
});
在上面的例子中,我該如何獲得「祕密密鑰」選項參數?鑑於該頁面上可能有多個此小部件實例,如何獲取用戶點擊的控件元素的正確實例?
的「小部件」的方法added in 1.8看起來可能是一個解決方案,但它需要知道什麼元素,用戶最初應用widget中:
$("#myDiv").myWidget("widget");
在這種情況下,你如何找到了什麼用戶最初設置爲這個小部件的實例的選擇器(示例中爲「#myDiv」)?