Closed
Bug 132863
Opened 22 years ago
Closed 22 years ago
Can't resize framesets
Categories
(Core :: DOM: Core & HTML, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: n-baxley, Assigned: jst)
References
()
Details
Attachments
(1 file)
154 bytes,
text/plain
|
Details |
You can't change the rows and cols property of a given frameset. The given url is an example that should change the size of a frameset after telling you which frameset you are altering. It is working on the proper frameset since the alert is using the frameset objects ID. This example works fine in IE 5.5.
Comment 1•22 years ago
|
||
Browser, not engine ---> DOM Level 0. Here is the key function involved: <html><head><title>Untitled</title> <script language="JavaScript1.2"> function setFrameRows(framesetID, newRowsString) { //alert(framesetID + ":" + newRowsString); frameset = top.document.getElementById(framesetID) alert("Trying to resize " + frameset.id); frameset.rows = newRowsString; } </script> </head> <body> <a href="#Shrink" onclick="setFrameRows('FramesetLeft', '*, 50');">Minimize</a> <a href="#Shrink" onclick="setFrameRows('FramesetLeft', '50%, *');">Restore</a> </body></html>
Assignee: rogerl → jst
Component: JavaScript Engine → DOM Level 0
QA Contact: pschwartau → desale
Comment 2•22 years ago
|
||
Confirming reported behavior with Mozilla trunk binary 20020317xx. Nothing happens when you click the links. No errors in JS Console. Note: this testcase also does not work in NN4.7. Is this IE-only syntax?
Status: UNCONFIRMED → NEW
Ever confirmed: true
Comment 3•22 years ago
|
||
The DOM Level 1 does define a rows and cols attribute on the HTMLFrameSetElement interface. See http://www.w3.org/TR/REC-DOM-Level-1/level-one-html.html#ID-43829095. It doesn't say if it is writeable or not though. I assume that the addressing on the Frameset element is correct since you can pull the ID from it.
Comment 4•22 years ago
|
||
cc'ing Boris, jkeiser, because I think they'd be interested in this -
Comment 5•22 years ago
|
||
I've updated the above test page (http://www.baxleys.org/Mozilla/Frames/resizeframeset.html) to show the rows value before and after the change. It appears to be changing the value, but the screen is not being updated (redrawn?). Here is the function as it stands now: function setFrameRows(framesetID, newRowsString) { frameset = top.document.getElementById(framesetID) alert("Original frameset rows value for " + frameset.id + "=" + frameset.rows); frameset.rows = newRowsString; alert("New frameset rows value for " + frameset.id + "=" + frameset.rows); }
Comment 6•22 years ago
|
||
Yes, in the code, we do not do anything when you change the rows or cols attributes. We don't want to do a reframe because currently, frames will end up reloading their document on reframe (this is true after jst's landing as well, I believe).
OS: Windows 2000 → All
Comment 7•22 years ago
|
||
see also bug 48422, bug 63980, and bug 69347. I can't really figure out whether there's a dup in there, but I thought it might be interesting.
Comment 8•22 years ago
|
||
hmm, methinks I may be wrong, and someone else is catching the cols/rows change.
Comment 9•22 years ago
|
||
nsHTMLFrameSetElement.cpp 204 if ((aAttribute == nsHTMLAtoms::rows) || 205 (aAttribute == nsHTMLAtoms::cols)) { 206 aHint = NS_STYLE_HINT_FRAMECHANGE; 207 }
Comment 10•22 years ago
|
||
Comment 11•22 years ago
|
||
Fixed by bug 48422 being fixed.
Status: NEW → RESOLVED
Closed: 22 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•