Search
  1. イベントのバインド〔bindAsEventListener()〕
  2. メソッドのバインド〔bind()〕
  3. 空の関数〔emptyFunction()〕

イベントのバインド
bindAsEventListener()

unknown

バインド先のオブジェクト=バインドするイベント.bindAsEventListener(バインド元オブジェクト);

オプション引数arg(バインドするメソッド)にイベントをバインドします。 bind()と同じですが、実行時に第1引数thisObj(バインド元オブジェクト)に指定した現在のイベントオブジェクトを受け取る関数を確かめ、ブラウザの互換性を考慮している点が異なります。 戻り値としてthisObjに関連付けられた関数のインスタンスを返します。 thisObjは、関数内でthisとしてで参照可能です。 arg(バインド元オブジェクト)を複数指定する場合はカンマ区切りで指定します。

サンプルを見る
<div id="box" style="background-color:yellow;">Click!</div>
<script type="text/javascript">
    checkEvent={
        /* div#box領域をクリックした時のマウス座標を取得 */
        getXY:function(evt){alert(evt.screenX+","+evt.screenY);},
        /* クリックした要素名を取得 */
        getTag:function(evt){alert(Event.element(evt).tagName);}
    }
    $("box").onclick=checkEvent.getXY.bindAsEventListener(checkEvent);
    document.body.onclick=checkEvent.getTag.bindAsEventListener(checkEvent);
</script>

メソッドのバインド
bind()

unknown

バインド先のオブジェクト=バインドするメソッド.bind(バインド元オブジェクト);

第1引数thisObj(バインド元オブジェクト)が呼び出し元によって変化しないようにロックし、オプション引数arg(バインドするメソッド)をバインドします。 戻り値としてthisObjに関連付けられた関数のインスタンスを返します。 thisObjは、関数内でthisとしてで参照可能です。 arg(バインド元オブジェクト)を複数指定する場合はカンマ区切りで指定します。

サンプルを見る
<script type="text/javascript">
    man={age:30,inc:function(){this.age++;}}
    woman={age:20}
    woman.inc=man.inc.bind(man);
    document.write("Man="+man.age+", Woman="+woman.age+"<br>");
    woman.inc();
    document.write("Man="+man.age+", Woman="+woman.age+"<br>");
</script>

空の関数
emptyFunction()

unknown

空の関数=Prototype.emptyFunction;

空の関数オブジェクトを返します。

サンプルを見る
<script type="text/javascript">
    emptyFunc=Prototype.emptyFunction;
    document.write(emptyFunc);
</script>

関連コンテンツ

Q. このサイトの情報はお役に立ちましたでしょうか?

投票する 投票結果を見る

管理人に【web拍手】を送るweb拍手(1行メッセージも送れます♪)

pagetop

polarized women