私はOOPに比較的慣れていないので、用語についてはよくわかりません。
オブジェクト(例myObject.myElement
)のフィールドとしてDOM要素を作成し、その要素をドキュメントに追加しました。オブジェクトには.mousemove()
(jQueryを使用して)イベントがアタッチされています。myObject
オブジェクトの他のフィールドにアクセスできるように、選択した要素(myElement
)がフィールドであるオブジェクト()を選択できるようにしたい。複数のオブジェクトがあり、イベントハンドラーは異なるオブジェクトの要素に対して同じです。要素の親オブジェクトを選択することは可能ですか?同じデータにアクセスできるように、要素に同じフィールドを指定する必要がありますか?
私はこのようなことをしたいのですが、多分それはそれほど単純ではありません:
$('.bubble').on({mousemove: function () {
parentObject = this.parentObject();
alert(parentObject.otherDataField);
});
要素は次のように作成されました。
function bubbleObject(value)
{
this.value = value;
this.element = document.createElement('div');
$(this.element).appendTo('.bubbles');
}
myFirstBubble = new bubbleObject(10);
mySecondBubble = new bubbleObject(100);
そして、オブジェクトのフィールドにアクセスできる必要がありvalue
ます(コードがかなり長く、ほとんど問題とは無関係であるため、オブジェクトを単純化しています)。
これを行う必要がありますか:
function bubbleObject(value)
{
this.value = value;
this.element = document.createElement('div');
$(this.element).appendTo('.bubbles');
this.element.value = value; // add same value to element
}
またはもっと良い方法はありますか?