2011-05-13 10 views
1

以前に尋ねられた場合は謝罪しますが、Javascriptオブジェクトにイベントリスナ/ハンドラを追加する方法はありますか?好ましくは、JQueryを使用します。などjavascriptオブジェクトのJqueryイベントリスナー

var foo; 
$(foo).bind('change', function() { 
    alert("Foo has changed!"); 
}); 

私はこれを試してみましたが、何も起きていないようにみえます。これはDOM要素でのみ機能しますか?

EDIT: オーディオタグまたはビデオタグでエラーが発生するたびにイベントが発生する必要があります。もともと、私は、エラー、 'media.error'オブジェクトがnullだったかどうかを確認するために間隔を使用していましたが、これは余分な処理能力を使用しており、回避したいと思います。

編集2:明らかに私は間違っていると感じました。私が見つけた最も簡単な方法は、ビデオ/オーディオタグに "onerror"プロパティを追加することでした。

答えて

1

あなたが実際にやりたいことを述べることが重要だということにCheesoは同意しますが、特定の質問に対する回避策は、オブジェクト内に変数を格納し、getter/setterを通じてアクセスを提供することですあなたがセッターで望むことをすることができます。例えば

function data() { 
    var foo = 0; 

    this.setFoo = function(newVal) { 
     foo = newVal; 
     alert(foo); 
    }; 
} 

var theData = new data(); 

theData.setFoo(5); 
0

はい、正しいです。あなたは "変数ウォッチャー"を作ることはできません。変数が変更されたときにイベントが発生することはありません。

あなたは何ですか本当にをしようとしていますか?

+0

私は明確化のための私の投稿を編集しました。 – jdw

関連する問題