怎样取得图片的绝对位置?

nhgayukai 2002-07-14 05:40:16
怎样取得图片的绝对位置?
就是LEFT和leftY两个
...全文
286 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
lanbor 2002-07-15
  • 打赏
  • 举报
回复
哈哈。meizz(梅花雨)这段代码很精彩呀。。。
dylanOK 2002-07-15
  • 打赏
  • 举报
回复
嗯.梅兄的剑法果然绝妙!佩服佩服. :)

还有,下面这样也可以的.

<img id=img1 src="abc.gif" onclick="ff(this)">
<script>
function ff(obj){
obj=obj.getBoundingClientRect();
alert(obj.top+","+obj.left);
}
</script>
llrock 2002-07-15
  • 打赏
  • 举报
回复
写了两个函数,用下面这两个函数就可以了,没找到直接的属性,getAbsoluteX(图片的id或name)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>

<BODY>
<div id="Layer1" style="position:absolute; left:100px; top:300px; width:385px; height:203px; z-index:1; background-color: #CC33CC; layer-background-color: #CC33CC; border: 1px none #000000">
<div id="Layer3" style="position:absolute; left:100px; top:50px; width:215px; height:214px; z-index:2; background-color: #999999; layer-background-color: #999999; border: 1px none #000000">
<div id="Layer2" style="position:absolute; left:100px; top:50px; width:166px; height:204px; z-index:2; background-color: #FF0000; layer-background-color: #FF0000; border: 1px none #000000">
<IMG id=img1 SRC="D:/macIMG/animation90x80[1].gif" WIDTH="90" HEIGHT="85" BORDER=0 ALT=""> </div>
</div>
</div>
<div id="Layer4" style="position:absolute; left:516px; top:188px; width:162px; height:187px; z-index:2"></div>
<TEXTAREA NAME="asd" ROWS="12" COLS="9" onkeydown="alert(3)">123456789987654321</TEXTAREA>
<SCRIPT LANGUAGE="JavaScript">
<!--
function getAbsoluteX(e){
var end=document.body.sourceIndex;
var x=e.offsetLeft;
var sid=e.parentElement.sourceIndex;
var tmp=e.parentElement;
while(sid!=end){
x+=tmp.offsetLeft;
tmp=tmp.parentElement;
sid=tmp.sourceIndex;
}
return x
}
function getAbsoluteY(e){
var end=document.body.sourceIndex;
var y=e.offsetTop;
var sid=e.parentElement.sourceIndex;
var tmp=e.parentElement;
while(sid!=end){
y+=tmp.offsetTop;
tmp=tmp.parentElement;
sid=tmp.sourceIndex;
}
return y
}



//-->
</SCRIPT>
<INPUT TYPE="button" value=hello NAME="asdf" onclick="if(asd.innerHTML.indexOf('\n')!=-1)alert(asd.innerHTML)">
</BODY>

</HTML>
meizz 2002-07-14
  • 打赏
  • 举报
回复
<script language="Javascript">
function getIE(e){
var t=e.offsetTop
var l=e.offsetLeft
while(e=e.offsetParent){
t+=e.offsetTop
l+=e.offsetLeft
}
alert("top="+t+"\nleft="+l)
}
</script>

<img src="**.gif" id=img1 onclick=getIE(this)>
llrock 2002-07-14
  • 打赏
  • 举报
回复
修正楼上的错误,offset只是得到与其容器的相对值
dylanOK 2002-07-14
  • 打赏
  • 举报
回复
<img id=img1 src="abc.gif" onclick="alert(this.offsetLeft+','+this.offsetTop)">

87,996

社区成员

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

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