定位div


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<SCRIPT LANGUAGE="JavaScript">
<!--
//计算位置的函数:元素,属性
function calculateOffset(field, attr) {
var offset = 0;
while (field) {
//文本框[属性],这种写法得到当前元素相对于父元素的偏移值
offset += field[attr];
field = field.offsetParent;
}
return offset;
}
onload=function(){
var Obj = document.getElementById("d");
var div = document.getElementById("dd");
var W = Obj.offsetWidth ;
var L = calculateOffset(Obj,"offsetLeft")
var T = calculateOffset(Obj,"offsetTop")


div.style.left=L+"px";
div.style.top=T+Obj.offsetHeight+"px";
div.style.width=W +"px";
}
//-->
</SCRIPT>
</HEAD>

<BODY>
<TABLE width=90% height=300 border="1" bgcolor="red">
<TR>
<TD></TD>
<TD></TD>
<TD></TD>
<TD></TD>
<TD></TD>
</TR>
<TR>
<TD></TD>
<TD></TD>
<TD></TD>
<TD><input id="d"/></TD>
<TD></TD>
</TR>
<TR>
<TD></TD>
<TD></TD>
<TD></TD>
<TD></TD>
<TD></TD>
</TR>
</TABLE>
</BODY>
<div style="position:absolute;height:60px; background:yellow;border:1px blue solid" id="dd">asdf</div>
</HTML>







<SCRIPT LANGUAGE="JavaScript">
<!--
function creatediv(obj){
cleardiv() ;

var w ; // 宽
var h = "100" ; // 高
var l ; // 左边距
var t ; // 上边距

w = obj.offsetWidth ;
l = obj.offsetLeft ;
t = obj.offsetTop+obj.offsetHeight ;
var temp = obj.offsetParent ;
while(temp){
l+=temp.offsetLeft ;
t+=temp.offsetTop ;
temp=temp.offsetParent ;
}

var div = document.createElement("div");
div.id ="div" ;
div.innerHTML="abc" ;
with(div.style){
position="absolute";
width=w +"px";
height=h+"px" ;
left=l+"px";
top=t+"px";
backgroundColor="red";
borderColor="black";
}
div.onclick=function(){
document.body.removeChild(this);
}
// alert(div.innerHTML);
document.body.appendChild(div);

//alert(w+" "+h+" "+l+" "+t);
}


function cleardiv(){
var d = document.getElementById("div") ;
if(d){
document.body.removeChild(d);
}
}


//-->
</SCRIPT>



<center>
<div style="width:80%;background:yellow">
<TABLE width="90%" border="1">
<TR>
<TD>a</TD>
<TD>b</TD>
<TD>c</TD>
<TD>d</TD>
<TD>e</TD>
</TR>
<TR>
<TD>a</TD>
<TD>b</TD>
<TD>c</TD>
<TD>d</TD>
<TD>e</TD>
</TR>
<TR>
<TD>a</TD>
<TD>b</TD>
<TD><input onclick="creatediv(this)"></TD>
<TD>d</TD>
<TD>e</TD>
</TR>
<TR>
<TD>a</TD>
<TD>b</TD>
<TD>c</TD>
<TD>d</TD>
<TD>e</TD>
</TR>
</TABLE>
</div>
</center>





<script>
//jQuery method
$(function(){
var O_ = $("#d").offset();
$("#dd").css({"left":O_.left+"px","top":(O_.top+$("#d").height()+5)+"px"});
$("#dd").width($("#d").width());
});
</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值