[Webkit-unassigned] [Bug 118809] New: onegameamonth.com site makes safari unresponsive

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Jul 17 13:22:43 PDT 2013


https://bugs.webkit.org/show_bug.cgi?id=118809

           Summary: onegameamonth.com site makes safari unresponsive
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Macintosh
               URL: http://onegameamonth.com/
        OS/Version: Mac OS X 10.8
            Status: UNCONFIRMED
          Severity: Normal
          Priority: P2
         Component: New Bugs
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: arthur at kernel9.com


The site http://onegameamonth.com/ changes UI every month, but every month there is an animation with optional interaction.
This month it's really easy, layer some translucent pictures and move them linearly over time.

PROBLEM
--------
Safari/Webkit Nightly, when faced with this page, becomes unresponsive. The offending script is included below.
It's this piece, if I turn off JS, load the site, then turn back on JS and eval() this code, the problems start.

The problem is the same in Safari 6.0.5 on Mac OS X 10.8.4, the latest Webkit Nightly and also in Safari 7 on 10.9b3.
Firefox and Chrome handle the page just fine.

I think this is a serious problem as the page becomes unresponsive while it seemingly uses normal animation techniques.


DESIRED BEHAVIOUR
-----------------
normal operation of the webpage, hovering, clicking, etc.


ACTUAL BEHAVIOUR
-----------------
Cannot interact with web page, spinning beach balls of doom, the web inspector cannot be opened, no hovers register, etc.
Scrolling does work normally.

The page acts as expected if the animation setup script has not been run.


OFFENDING SCRIPT
----------------

var sbg1 = document.getElementById('scroller1');
var sbg2 = document.getElementById('scroller2');
var sbg3 = document.getElementById('scroller3');
var sbg4 = document.getElementById('scroller4');
var bgx = 0;
function skyscroller()
{
    bgx--;
    if (sbg1) sbg1.style.backgroundPosition = Math.round(bgx/2) + 'px 0px';
    if (sbg2) sbg2.style.backgroundPosition = -bgx + 'px 0px';
    if (sbg3) sbg3.style.backgroundPosition = bgx*2 + 'px 0px';
    if (sbg4) sbg4.style.backgroundPosition = -bgx*3 + 'px 0px';
}

window.requestAnimFrame = (function(){
  return  window.requestAnimationFrame       ||
          window.webkitRequestAnimationFrame ||
          window.mozRequestAnimationFrame    ||
          function( callback ){
            window.setTimeout(callback, 1000 / 60);
          };
})();

(function animloop(){
  requestAnimFrame(animloop);
  skyscroller();
})();

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list