2012-01-26 8 views
3

私は特定のものをグーグルで見つけたので、私は数多く「ラッパーを作成し、それを拡張する」という概念に入り込んできました。私の場合は、DOMを拡張したいと考えています。私はそれに対してどのようにアドバイスしたのか知っていますが、私がやろうとしていることはやや異なっており、私は少なくともこれらの方法論を探求する必要があります。だから私は、あなたが私が調​​べたブログ/ wiki/tutがどんなものであるかを直接回答することはできません:ラッパーオブジェクト/関数とは何ですか?ラッパーを作成する方法

申し訳ありません申し訳ありませんが、私は意味がありませんでした。私はこのアイディアを、プロトタイプのライブラリを読んだときから得ています.JQueryは、これらの種類のものを一度に実行しました。例としてDOMを使用することができれば、それは認められるでしょう。

+1

通常、ラッパーは、基本となるオブジェクトのメソッドを多く提供します。したがって、ラップしているものへの参照を含む 'クラス'ラッパーを作成し、オブジェクトメソッドを呼び出すメソッドを作成し、独自のものをミックスに追加します。私が正しく覚えていれば、いつかは、少なくともいくつかのブラウザでは、dom要素のプロトタイプを拡張することができます。それはもはや真実ではないでしょう。 –

答えて

12

愚か例えば、MyDiv内部DOM要素my_divラッピング<div id='my-div'></div>

MyDiv = { 
    _e:document.getElementById('my-div'), 
    setText:function(s) { 
    this._e.innerText = s; 
    }, 
    getText:function() { 
    return this._e.innerText; 
    }, 
    red:function() { 
    this._e.style.backgroundColor = 'red'; 
    } 
} 

を想定すると、フィルタ(または増強)することを可能にラップされたオブジェクトのインターフェイス。

MyDiv.setText('Hello'); 
MyDiv.red(); 
alert(MyDiv.getText()); 
+0

私のためだけにStackOverflowに登録しますか?名誉あるああ、ありがとう、それはちょうど愚かなそのような素晴らしい答え。 – TERMtm

関連する問題