// 名前空間の登録
registerNamespace("ITmedia.Gadget.Example.MyGadget");
// コンストラクタ
ITmedia.Gadget.Example.MyGadget = function(p_elSource, p_args, p_namespace)
{
// 基底のinitializeBaseを呼び出す
ITmedia.Gadget.Example.MyGadget.initializeBase(this, arguments);
// 各種情報の保存
// 自分自身
var m_this = this;
// DOMオブジェクト
var m_el = p_elSource;
// argsオブジェクト
var m_args = p_args;
// ボタン
var m_btn;
// initializeメソッド
this.initialize = function(p_objScope)
{
// 基底のinitializeメソッドを呼び出す
ITmedia.Gadget.Example.MyGadget.getBaseMethod(
this, "initialize", "Web.Bindings.Base").call(this, p_objScope);
// テキストボックス、ボタン、div要素を作る
m_el.innerHTML =
"" +
"
" +
"" +
"
";
// ボタンがクリックされたときのイベントをアタッチ
m_btn = m_el.children['btn'];
m_btn.attachEvent("onclick", OnClick);
}
ITmedia.Gadget.Example.MyGadget.registerBaseMethod(this, "initialize");
// disposeメソッド
this.dispose = function(p_blnUnload)
{
// イベントをデタッチ
m_btn.detachEvent("onclick", OnClick);
m_btn = null;
// 基底のdisposeメソッドを呼び出す
ITmedia.Gadget.Example.MyGadget.getBaseMethod(
this, "dispose", "Web.Bindings.Base").call(this, p_blnUnload);
}
ITmedia.Gadget.Example.MyGadget.registerBaseMethod(this, "dispose");
// OnClick関数
function OnClick()
{
// 入力されたテキストを取得し、div要素へと設定する
var textElement = m_el.children['mytextbox'];
var divResult = m_el.children['result'];
divResult.innerText = textElement.value;
}
}
// クラスを登録
ITmedia.Gadget.Example.MyGadget.registerClass(
"ITmedia.Gadget.Example.MyGadget", "Web.Bindings.Base");