SitePoint Sponsor

User Tag List

Results 1 to 3 of 3
  1. #1
    SitePoint Member
    Join Date
    May 2008
    Location
    Cardiff
    Posts
    12
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    JS hogging CPU ?

    I have some JS that animates a sliding navbar on my site.

    When viewing http://twisted-reality.co.uk using IE8 iexplorer.exe hogs around 80% of my CPU when in focus and around 20% when not in focus.

    I don't have this problem with IE7, Firefox, Opera etc...

    Here is the code that I think is causing the problem :

    Code:
    <!-- START FLOAT SCRIPT -->
      <script type="text/javascript">
      <!--
      var ns = (navigator.appName.indexOf("Netscape") != -1);
      var d = document;
      function JSFX_FloatDiv(id, sx, sy)
      {
        var el=d.getElementById?d.getElementById(id):d.all?d.all[id]:d.layers[id];
        var px = document.layers ? "" : "px";
        window[id + "_obj"] = el;
        if(d.layers)el.style=el;
        el.cx = el.sx = sx;el.cy = el.sy = sy;
        el.sP=function(x,y){this.style.left=x+px;this.style.top=y+px;};
    
        el.floatIt=function()
        {
          var pX, pY;
          pX = (this.sx >= 0) ? 0 : ns ? innerWidth : 
          document.documentElement && document.documentElement.clientWidth ? 
          document.documentElement.clientWidth : document.body.clientWidth;
          pY = ns ? pageYOffset : document.documentElement && document.documentElement.scrollTop ? 
          document.documentElement.scrollTop : document.body.scrollTop;
          if(this.sy<0) 
          pY += ns ? innerHeight : document.documentElement && document.documentElement.clientHeight ? 
          document.documentElement.clientHeight : document.body.clientHeight;
          this.cx += (pX + this.sx - this.cx)/8;this.cy += (pY + this.sy - this.cy)/8;
          this.sP(this.cx, this.cy);
          setTimeout(this.id + "_obj.floatIt()", 40);
        }
        return el;
      }
      JSFX_FloatDiv("navbar", 106,118).floatIt();
      -->
      </script>
      <!-- ********************************************************* -->
      <!-- END FLOAT SCRIPT -->
    I don't particularly want to use conditional statements to give IE8 a different navbar.

    Hope someone can help

  2. #2
    SitePoint Addict chestertondevelopment's Avatar
    Join Date
    Dec 2005
    Location
    Essex, UK
    Posts
    241
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I haven't got time to look at the script, sorry, but I wouldn't be too bothered about IE8 being slow at the moment, it's only a beta and it's probably going to change a lot by the time it's released.

  3. #3
    SitePoint Member
    Join Date
    May 2008
    Location
    Cardiff
    Posts
    12
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I'm just concerned that if this is the way that IE8 will be handling JS my site will suck the users resources dry.

    I'm not entirely sure if the problem lies within the script or IE8...


Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •