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 回答