2008-11-13 26 views
0

我有一个框架集,它的cols属性此刻设置为“50%,50%”。我有一个toggleView方法,它被点击一个元素后被调用。frameset - 使用javascript交换行的列

我的目标是将框架集从显示列改为行,再分为50/50。

我试图在框架集上执行removeAttribute(“cols”),虽然这确实删除了“cols”属性,但似乎并未在页面上更新(使用萤火虫测试活动)。

然后,我会继续添加行属性(是createAttribute,然后setAttribute一个有效的方法来做到这一点?),以完成切换。

我想知道如果这是甚至可行的看到删除列似乎并没有做任何事情。

非常感谢您的帮助。

回答

2

这个工作对我罚款:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> 
<html> 
    <head> 
    <title>A simple frameset document</title> 
    <script type="text/javascript"> 
     function onloadHandler() { 
     setTimeout(function() { 
      var myFrameset = document.getElementById("myFrameset"); 
      var value = myFrameset.getAttribute("cols"); 
      myFrameset.removeAttribute("cols"); 
      myFrameset.setAttribute("rows", value); 
     }, 2500); 
     } 
    </script> 
    </head> 
    <frameset id="myFrameset" onload="onloadHandler()" cols="50%, 50%"> 
    <FRAME src="page1.htm"> 
    <FRAME src="page1.htm"> 
    </frameset> 
</html> 

基本上,它在页面加载后交换2.5秒。让我知道你是否需要别的东西,或者是否因为某些原因不适合你。我只在IE7中测试过它(这是我最近开发一个应用程序,不幸的是)。

+0

嘿人。谢谢回答。实际上,在我回家之前,在你的回答来临之前,我已经做好了工作。 做了一件非常相似的事情,结果将cols属性设置为空字符串与删除它具有相同的效果。因此添加了一个行属性并做到了这一点。使用JQuery。再次感谢。 – RekrowYnapmoc 2008-11-13 23:22:24