额 有些抓狂了。请高手指教。

lbeast 2007-09-29 10:17:59
取图片长和宽。
我用this.clientWidth和this.clientHeight
单独写在一个测试页面里都很正常。
但是当我写在我的主页面时,第一次都是0,刷新2次后才能取出正确值。

请教大家。该怎么办?
...全文
65 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
lbeast 2007-09-29
  • 打赏
  • 举报
回复
给分 呼呼。再追加问一下 《在元素id中能不能用数组?》


<img id = temp1 >
<img id = temp2 >
<img id = temp3 >
...
<img id = tempn >

如何用数组来定义和处理呢?
谢谢大家!

帖子在这里

http://topic.csdn.net/u/20070929/11/84d76f48-eb2f-42c0-96e8-ffd548956169.html

谢谢!
lbeast 2007-09-29
  • 打赏
  • 举报
回复
body 没有onload。但是前面有。
测试了一下 用window.load可以。
虽然代码要有大一点的调整。但应该可以用了。

再细致测一下。

谢谢各位!
s_liangchao1s 2007-09-29
  • 打赏
  • 举报
回复
因为一个页面只能有一个onload 你主页面的<body>也有onload事件么?
幕后黑手-Boss 2007-09-29
  • 打赏
  • 举报
回复
我觉得应该写成函数
function getValue()
{
this.clientWidth
this.clientHeight
....
}
然后用window.load=getValue();
这样就会等到页面加载完了才执行函数
lbeast 2007-09-29
  • 打赏
  • 举报
回复
但是单独把下列代码拿出来到测试页面
<img src= <%=imgpath%> border=0 onload="if (this.clientWidth>this.clientHeight){this.width='130'} else {this.height = '90'}" alt="<%=doctitle%>">

就是完全正常的了。

这样也是onload啊。
s_liangchao1s 2007-09-29
  • 打赏
  • 举报
回复
我是在onload里取得值。。
onload是body正在加载时 所以图片根本没生成 图片是出来了 但是你在onload即图片还没生成先取得值 然后再出图片

不知道楼主看明白了没
lbeast 2007-09-29
  • 打赏
  • 举报
回复
啊 帖子多刷新了一次 发重了。

我也这样考虑 但是图片已经显示出来了。我是在onload里取得值。
s_liangchao1s 2007-09-29
  • 打赏
  • 举报
回复
楼主 上张帖子回复你了 我想既然你第一次是0 那么估计那时候图片还没有生成 既然是刷新2次后 那时图片生成了 就能取值了。。

仅供参考。。

87,903

社区成员

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

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