|
主题: 解决iframe在页面中无法自适应
|
Bain
职务:普通成员
等级:1
金币:1.0
发贴:78
|
#12004/9/13 10:54:23
iframe是一个比较特殊的控件。他的height只能是一个绝对值,不允许使用百分比。但是你可以用javascript输出一个iframe的HTML。但是这个相对值只能是当页面加载后赋给的。如果你resize。控件大小仍然是当初加载的高度。这个时候除了你在刷新。高度值才会重新加载。
这里我就想到了一个解决的方法。就是在body的标签中加上一个onResize事件;当你onload的时候触发写好的JS函数。然后在onResize的时候同样出发这个函数。从而解决上述问题。
演示代码如下:
<body bgcolor="#000000" onload="resizeHeight();" onResize="resizeHeight();"> <script language="javascript"> function resizeHeight() { document.getElementById("web").style.height = parseInt(document.body.clientHeight-50);
} </script>
<iframe name="web" id="web" width="100%" scrolling="NO" frameborder=0 src="about:blank"></iframe> </body>
|
=ridincal=
职务:管理员
等级:7
金币:20.0
发贴:5886
|
#22004/9/13 11:07:46
好像不是原创! 其实对于IFrame的高度自适应更正规的解决办法是使用Behavior/HTC或者Expression样式的办法(如果不考虑兼容性的话)
编辑历史:[此帖最近一次被 ridincal 编辑过(编辑时间:2004-09-13 13:13:24)]
|
浮尘
职务:普通成员
等级:3
金币:7.0
发贴:1258
|
#32004/9/15 9:49:18
ridincal 能否给做个实例?
|
=ridincal=
职务:管理员
等级:7
金币:20.0
发贴:5886
|
#42004/9/15 10:16:42
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]
|
浮尘
职务:普通成员
等级:3
金币:7.0
发贴:1258
|
#52004/9/15 14:07:25
谢谢。
|
Bain
职务:普通成员
等级:1
金币:1.0
发贴:78
|
#62004/9/16 8:21:05
是不是原创我觉得不重要。重要的是能把自己的心得共享给大家。
至于你说的用Expression方法。我也在MSDN上看过相关的说明。自己也尝试过。但这样做效率不高。计算速度过长。
所以才想到使用属性直接替换的方法。
另外具我说知。在编程界里并没有什么标准的说法。方便,实用就是标准。只要结果一样。并且效率各方面都好。就算通过。
|
=ridincal=
职务:管理员
等级:7
金币:20.0
发贴:5886
|
#72004/9/16 12:51:20
Bain在上个帖子中说 引用: 是不是原创我觉得不重要。重要的是能把自己的心得共享给大家。
请注意: 这里鼓励分享 自己的心得,但不鼓励不加说明就将他人的劳动成功Copy为自己的心得!如果你连这个起码的道理都不明白,我也无话可说……我只想知道你是不是这儿的站长: kiss.lz4f.com/blog/blogview.asp?logID=121
|
Bain
职务:普通成员
等级:1
金币:1.0
发贴:78
|
#82004/9/17 9:34:51
不好意思。我的站点是:http://www.contnew.com。你说的这个站点我不知道。 这篇文章虽然没有什么难度而言。但是自己写的我还是清楚的。
|
Bain
职务:普通成员
等级:1
金币:1.0
发贴:78
|
#92004/9/17 9:42:17
另外我在补充一下。blueidea中的文章也是我发布的。
|
=ridincal=
职务:管理员
等级:7
金币:20.0
发贴:5886
|
#102004/9/17 9:56:52
如果原作者是你的话,应该 Say Sorry 的是我,不好意思! 感谢分享心得 另,建议发表原创性文章使用 图标
|
Bain
职务:普通成员
等级:1
金币:1.0
发贴:78
|
#112004/9/17 10:45:36
呵呵。其实我的目的就是能把自己知道的与大家分享。并不在意是否原创的名号。 我的小站:www.contnew.com。
有时间还望多支持。
|