Paul
Paul

Reputation: 1966

Javascript: How to resize frame?

How to, using JavaScript, resize frame inside frameset?

I've found jQuery slideUp (http://api.jquery.com/slideUp/) function very useful, however it's not possible to implement it to work with the frame.

Upvotes: 8

Views: 8899

Answers (1)

Dr.Molle
Dr.Molle

Reputation: 117354

To resize a frame, you'll have to change the rows/cols -attribute of the parent frameset-element.

Short example:

<html>
<head>
<script>
window.onload=function()
{
  var frame=window.frames[0];
      frame.document.open();
      frame.document.write('<input  type="button" \
                                    onclick="parent.fx()" \
                                    value="resize this frame to 150px height">');
      frame.document.close();
}
var i=50;
function fx()
{

  timer=setInterval(
                    function()
                    {
                      if(i>150)
                            {
                              clearTimeout(timer);
                            }
                      else  {
                              document.getElementsByTagName('frameset')[0]
                              .setAttribute('rows',(i++)+',*');
                            }
                    }
                    ,20)
}
</script>
</head>
<frameset rows="50,*">
  <frame src="about:blank"/>
  <frame src="about:blank"/>
</frameset>
</html>

Upvotes: 11

Related Questions