[window.screenTop之应用问题]迷惑又迷惑 请各位指点#

仙人掌 2004-03-04 09:58:24
window.screenTop 可以返回当前窗体距离屏幕顶端的距离

我在应用中遇到了以下问题:

一个页面 form1.htm 其中包含一个iframe form2.htm

代码如下:
form1.htm
---------------------------
<span style="height:100"></span>
<iframe src="form2.htm" width="670" height="236" marginwidth="1" marginheight="1" id="oooo" name="oooo" border="0" frameborder="0">
</iframe>
<input type="button" value="view" onclick="alert(window.screenTop)">
--------------------------

form2.htm
--------------------------
<div align="center">
<table border="1" cellpadding="0" cellspacing="1" style="border-collapse: collapse" width="70%" height="322" bordercolor="#808080" id="table1">
<tr>
<td> </td>
</tr>
<tr>
<td></td>
</tr>
<tr>
<td height="36"><input type="button" value="view" onclick="alert(window.screenTop)"></td>
</tr>
</table>
</div>
----------------------------


以上代码测试时 显示的各个screenTop都正常
其中form2显示该form所在frame相对于屏幕顶端的高度

两个值 分别为 93 210

但我将form1中的iframe放在一个table中 问题就出来了
代码如下
form1.htm
------------------
<span style="height:100"></span>
<div><table><tr><td height="30"></td></tr><tr><td><iframe src="form2.htm" width="670" height="236" marginwidth="1" marginheight="1" id="oooo" name="oooo" border="1" frameborder="1">
</iframe></td></tr></table>
<input type="button" value="view" onclick="alert(window.screenTop)">

</div>

form2代码不变
按两个view按钮 分别得到93 279

第一个view按钮的结果没有问题
我们来看第二个按钮的变化

-- 加table前为 210 加了table并加了一高度为30的tr/td后 错误就出现了
理论上我只增加了 30左右的高度[带table边框]
可实际上得到的值比原先增加了 将近70

而且随td高度的增加 误差会更加大


请问我这个问题原因是在哪里
如何解决
欢迎大家一起讨论

yeefly敬上
...全文
608 33 打赏 收藏 转发到动态 举报
写回复
用AI写文章
33 条回复
切换为时间正序
请发表友善的回复…
发表回复

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧