class Abstract.TimedObserver

Description

An abstract DOM element observer class, subclasses of which can be used to periodically check a value and trigger a callback when the value has changed.

A TimedObserver object will try to check a value using the getValue() instance method which must be defined by the subclass. There are two out-of-the-box subclasses: Form.Observer, which serializes a form and triggers when the result has changed; and Form.Element.Observer, which triggers when the value of a given form field changes.

Creating Your Own TimedObserver Implementations

It's easy to create your own TimedObserver implementations: Simply subclass TimedObserver and provide the getValue() method. For example, this is the complete source code for Form.Element.Observer:

Form.Element.Observer = Class.create(Abstract.TimedObserver, {
  getValue: function() {
    return Form.Element.getValue(this.element);
  }
});

Methods

Constructor

new Abstract.TimedObserver(element, frequency, callback)
  • element (String | Element) – The DOM element to watch. Can be an element instance or an ID.
  • frequency (Number) – The frequency, in seconds — e.g., 0.33 to check for changes every third of a second.
  • callback (Function) – The callback to trigger when the value changes.

Initializes an Abstract.TimedObserver; used by subclasses.