What kind of system are you testing on?
What kind of processor for instance?

> Errors-To: [EMAIL PROTECTED]
> X-BeenThere: [EMAIL PROTECTED]
> X-Mailman-Version: 2.0.5
> Precedence: bulk
> List-Help: <[EMAIL PROTECTED]?subject=help>
> List-Post: <[EMAIL PROTECTED]>
> List-Subscribe: <https://lists.sourceforge.net/lists/listinfo/dynapi-dev>,
>       <[EMAIL PROTECTED]?subject=subscribe>
> List-Id: <dynapi-dev.lists.sourceforge.net>
> List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/dynapi-dev>,
>       <[EMAIL PROTECTED]?subject=unsubscribe>
> List-Archive: <http://www.geocrawler.com/redir-sf.php3?list=dynapi-dev>
> X-Original-Date: Fri, 26 Oct 2001 18:16:58 +0200
> Date: Fri, 26 Oct 2001 18:16:58 +0200
>
> Hi,
> While making a more powerful tree-view code, I was making a Litelayer, that
> doesn't have any events etc, but renders much faster, and I noticed that
> there is a way to speed up the initial creation of dynlayers too.
>
> I got it working on browsers supporting getElementById only, others remain
> at the same speed (although document.all should work too)
>
> What it is, is if you remove these lines from specificCreate():
>      // this.elm=parentElement.children[parentElement.children.length-1];
>      // this.css=this.elm.style;
>      // this.doc=this.parent.doc;
>
> the rendering of 1000 layers goes from 8.6 seconds to 5.4 seconds. (the
> liteLayer does it in 3.7 sec)
>
> the more layers, the bigger the difference.
>
> Now of course we need this.elm to be set, but only if we are going to
> manipulate a layer. So, if we add something like this:
>
> DynLayer.prototype.getValues=function() {
>  if(document.getElementById) {
>   this.elm=document.getElementById(this.id)
>   if(this.elm){
>       this.css=this.elm.style;
>       this.doc=this.parent.doc;
>       this.css.zIndex=this.z;
>
>       this.frame=this.parent.frame
>       this.elm.lyrobj=this;
>       return true
>   }else{
>       return false
>   }
>  }
> }
>
> this would set the this.elm variable, if it hasn't been set, and return true
> or false, depending on whether the object had been created yet.
>
> so in places that now contain the check:
>
> if (this.css==null) return;
> or
> if (this.elm==null) return;
>
> we could do this:
> if (this.getValues()==false) return;
>
> The whole thing means code like this:
>
>   myDynLayer = new DynLayer(null,50,35,300,30,"yellow")
>   myDynLayer.setHTML("hi")
>   DynAPI.document.addChild(myDynLayer)
>
> would render faster than code like this:
>
>   myDynLayer = new DynLayer(null,50,35,300,30,"yellow")
>   DynAPI.document.addChild(myDynLayer)
>   myDynLayer.setHTML("hi")
>
> Does anyone see any problems in this approach?
>
> Cheers,
> Richard.
> www.richardinfo.com
>
>
>
> _______________________________________________
> Dynapi-Dev mailing list
> [EMAIL PROTECTED]
> http://www.mail-archive.com/dynapi-dev@lists.sourceforge.net/


_______________________________________________
Dynapi-Dev mailing list
[EMAIL PROTECTED]
http://www.mail-archive.com/dynapi-dev@lists.sourceforge.net/

Reply via email to