I'm developing a website using a locally installed apache server to test "on the spot" so to speak. I just allowed an update of NoScript to version 1.9.7.7, and upon restarting I find the elements of my website are not rendering properly. Since I was in the process of working on the site, I first thought I had made a typo or other error that caused the problem. After testing, and ultimately disabling Noscript, I'm positive the problem is with Noscript and occurred as of 1.9.7.7.
The problem occurs:
- When I view my site locally in Firefox using localhost or 127.0.0.1 with NoScript 1.9.7.7 installed and enabled.
- When I have allowed scripts from localhost and 127.0.0.1.
The problem does not occur:
- When I view the site from the "real" host.
- In other browsers. I tested IE8, Chrome, Opera, and Safari.
- In Firefox when I disable the NoScript addon.
- When I used a NoScript version prior to 1.9.7.7.
- When I render the page with localhost/127.0.0.1 forbidden.
Because the issue seems to do with accessing localhost while noscript is running, I have no way to offer a link to illustrate the problem. The javascript has been thoroughly tested and debugged and appears to be valid. The XHTML and CSS all validate as well. The problem seems to only affect an areas of the page that are hidden with document.GetElementById('container').getElementsByTagName('span').style.display='none', then revealed again with document.GetElementById('hm1').style.display='block' upon a mouseover. What appears to happen is that all elements within the once hidden element appear to be stacking directly on top of each other as opposed to in rows like good little divs. I have tried changing the tags used from span to DIV, which basically disabled the script that acquired elements by tag name "span". The result is that the elements don't collapse once the page loads, however they do collapse and render properly using document.GetElementById('hm1').style.display='block' and document.GetElementById('hm1').style.display='none'.
I'm not sure if this is a side effect of a new feature or a bug, but it's going to make web development difficult for me. I can switch to another browser as my default, however I will still need to be able to reliably test in Firefox. To do this I will have to not just allow all scripts from 127.0.0.1 or localhost, but disable NoScript entirely. I'm also a bit concerned that this is an unintended side effect that could manifest in other ways.
I've included all the relevant details that I can think of, but if you need more information post a reply and I'll try to help.
Key elements to producing the glitch:
NoScript 1.9.7.7
getElementsByTagName
locally hosted Apache website (Localhost or 127.0.0.1)
RH
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.1) Gecko/20090715 Firefox/3.5.1 (.NET CLR 3.5.30729)