私は次のコードを持っています:
<div id="widHolder"></div>
<script type="text/javascript" language="javascript">
$('#widHolder').widgetName({
optionOne: false,
optionTwo: 1,
onComplete: function (holder) {
// ... do something here with the 'widHolder' object such as $(holder).addClass(x,y)
}
});
</script>
ウィジェット自体の中で、onCompleteメソッドはウィジェットの完全な初期化の直後に呼び出されます。ウィジェット内のコードが、ウィジェットがリンクされているオブジェクト(この場合、IDが「widHolder」のdiv)を参照するようにします。
私の目標は、上記のようなoncomplete関数を作成することにより、保持オブジェクトをすばやく簡単に参照できるようにすることです。ウィジェット自体のコードは、onComplete関数を呼び出して、ホルダー(取得する必要があります)をパラメーターとして渡すだけです。
これがjQueryUIウィジェットプラグインのコードサンプルです
(function ($) {
$.widget("ui.widgetName", {
options: {
// ... other options that can be set
onComplete: undefined
},
// called on the initialization of the widget
_init: function () {
// do initialization functions...
if(this.options.onComplete)
this.options.onComplete( I_WANT_TO_SEND_THE_DOM_ELEMENT_HERE );
},
}
})