Exact, an element removed may be add it elsewhere and my purpose is
out ....

It remains that the proposal of Mike
element.descendants (). invoke ( 'stopObserving');
element.stopObserving ();

But I find it rather heavy for the developer who must insert code to
delete each element and can also cause  performance's problems.

Could not we consider making public the method _destroyCache and add
it an optional parameter "ancestor"?
Expl :
function destroyCache(ancestor) {
    ancestor = $(ancestor);

    for (var i = 0, length = CACHE.length; i < length; i++) {
      if (!ancestor)
        || (CACHE[i].descendantOf // Possible on Window / Document
Elements
            && (CACHE[i].descendantOf(ancestor)
                || CACHE[i].match(ancestor))) {
          Event.stopObserving(CACHE[i]);
          CACHE[i] = undefined;
      }
    }
    CACHE = CACHE.reject(Object.isUndefined);
  }

This method could be integrated also at the AjaxUpdater before
replacing the content ?

Franck,

On 2 oct, 10:06, Jim Higson <j...@wikizzle.org> wrote:
> On Thursday 01 October 2009 21:56:30 Mike Rumble wrote:
>
> > You could also encapsulate this in a function wrapping Element#remove,
> > which IMHO is something Prototype should do out of the box.
>
> Quite disagree:
>
> * If I remove an element and add it elsewhere, I don't expect its events to
> have been de-registered. The code that moves the element shouldn't have to be
> aware of the (possibly unrelated) code that added the event listeners in order
> to ask it to add them again.
>
> * Removing from the document is not the same as allowing to be GC'd
>
> * Some elements may never be added to the document. Eg, an XML document which
> you download, manipulate then build some HTML representation of. Perhaps you
> want to monitor for mutations and keep the HTML in sync? [1]
>
> Jim
>
> [1] Not actually possible in IE or Chrome/Safari but would be nice if it were.
> In Chrome DOM mutation events only fire if the element is in the 
> document:http://jimhigson.blogspot.com/2009/09/chrome-and-dom-mutation-events....
>
> --
> Jim
> my wiki ajaxification thing:http://wikizzle.org
> my blog:http://jimhigson.blogspot.com/
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Prototype: Core" group.
To post to this group, send email to prototype-core@googlegroups.com
To unsubscribe from this group, send email to 
prototype-core-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/prototype-core?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to