1

古いイベントリスナーコードを新しいものに置き換える必要がありますが、古いものを削除する必要はありません。

onchange="func1();func2();"

次のように置き換える必要があります:

onchange="newFunc();func1();func2();"

JQueryを介して要素のonChangeイベントに新しいコードを追加するのは簡単でした。

var element = $('element');
var _onchange = element.onchange;
element.onchange = function() {
        //some additional code
        if (typeof(_onchange) == 'function') {
            _onchange();
        }
};

次に、Prototypeを使用して書き直す必要があります。次のようになると思います。

element.observe('change', function() {

    // new code here
    // then old onChange

}.bindAsEventListener(element)));

既存のonChangeのコードを取得するにはどうすればよいですか?..

4

1 に答える 1

1

.bindAsEventListener()まれな場合を除いて、実際に行う必要はありません

したがって、イベント監視を要素に追加します

$('element').observe('change',function(){
    //onchange code
});

これを行うと、その要素とイベントに設定されている他のオブザーバーを削除せずに、オブザーバーとして新しいコードが追加されます

于 2012-12-12T15:46:23.440 に答える