On 04/07/11 21:43, Olli Pettay wrote:
On 07/04/2011 09:01 PM, Dave Raggett wrote:
On 04/07/11 17:57, Olli Pettay wrote:
Mutation listener could easily
implement old/new value handling itself, especially if it knows which
attributes it is interested in.

How exactly would the listener know the previous state?


In the easiest case when the script cares about only one specific attribute:
element.addAttributeChangeListener(
  {
    prevVal: element.getAttribute("foo"),
    handleMutation: function(node, changeTarget) {
      if (node == changeTarget) {
        // do something with this.prevVal
        ...
        this.prevVal = element.getAttribute("foo");
      }
    }
  });

How does that scale to the case where you set the observer on the document or on a div element acting as a contained for content editable content? If I am not mistaken you would have to keep a copy of the document, or of that div element respectively, and keep it in sync with all of the mutations, which sounds like a major performance hit, and something you don't need to incur with the current DOM mutation events.

--

 Dave Raggett<d...@w3.org>  http://www.w3.org/People/Raggett


Reply via email to