对象未定义是什么错误? 你多利用alert(obj.tagName);alert(obj.id);来看你传入的obj对象是什么。怀疑你的obj=obj.offsetParent这句话有问题,具体你再看msdn。看看obj.offsetParent是什么意思。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可能你的var obj=Item; 这句话不对,试试var obj=window.document.getElementById(Item.id) 最大的可能:Item参数不是对象,而是对象的id之类的东西 我也认为Item,可能不是对象,用typeof试试,看看是不是对象. alert(typeof(Item));及alert(typeof(obj));的输出值都为object其中的Item代表的是多个文本框的ID变量在while前的alert(obj);的输出输出值还是objectwhile后的alert(obj);输出值就是Null了,请问这种情况如何解决呢? alert(obj.tagName + " , " + obj.offsetParent.tagName)看看是什么 楼主没搞清楚下面这段代码的作用啊。 while(obj=obj.offsetParent) { t+=obj.offsetTop; l+=obj.offsetLeft; }这段代码其实是写的比较精妙的,用于定位html元素在页面中的绝对位置(在网上copy来copy去被用的很多)。请注意看一下,while中间用的代码是obj=obj.offsetParent,是一个赋值语句。所以这句while语句同时完成了两个动作:1.将obj赋值为它的offsetParent;2.判断obj是否为object,是的话执行while循环中的语句。也就是说,这个循环会不断循环,直到找不到obj的offsetParent为止。这样就能够循环相加得到html元素的绝对位置。循环在结束的时候,obj是必然为null的,因为这个正是循环跳出的条件。所以说,如果你还要利用最初的obj的话,要么就直接引用Item,要么另外定义一个变量来使用。 while(obj=obj.offsetParent) { t+=obj.offsetTop; l+=obj.offsetLeft; }你的出错的我还没找到是那里问题,不过要回应一下你上面的问题,上面语句是当obj为null时退出循环,你在while后的alert(obj)当然是null啦。 alert(obj.tagName + " , " + obj.offsetParent.tagName)看看是什么返回INPUT,TD==============ONCLICK=setValue(this,obj)把这里的obj换成Item错误提示是:Item未定义==============在定义一次变量var OBJ=Item;或者 var OBJ=window.document.getElementById(Item.id);在ONCLICK=setValue(this,OBJ)错误提示是OBJ未定义============================function setValue(Item,TXT){ //document.all["sel"].style.display='none'; //TXT.value=Item.innerText;}这个函数已经不起作用了,错误就是在ONCLICK=setValue(this,OBJ)这里 页面中的文件<DIV ID="sel" STYLE="padding:3;height:40;BORDER: #6699CC 1px solid; POSITION: absolute;width:0;background-color:#F8F8F5;display:none;cursor:default"></DIV> 这样当然未定义啦,obj只是你函数里的变量!改为ONCLICK=setValue(this,'"+obj.uniqueID+"')obj.uniqueID返回唯一的ID号setValue中引用document.all(obj_id)来得到你要的obj. window.open()打的新窗口覆盖在老窗口上 兄弟们帮我 SHIFT+左键=左键实现 $("item_code")是什么意思+js 求几个正则表达式 请教如何设置 框架集内 框架 的显示隐藏或大小 我用jquery查询aspx生成的json,为什么一直失败呢? 如何根据鼠标在页面上单击或双击取得select框的id和value 在WEB网客户端如果用JS对单选框进行处理! 如何实现按一链接增加一个文本框等控件! 高分求代码!(我是初学者) iframe的老问题,动态调整,那位大虾有办法,求教(内详) 救助:ie 5和ie 6有什么区别。为什么我写的程序在ie 5中会使ie关闭?
var obj=window.document.getElementById(Item.id)
其中的Item代表的是多个文本框的ID变量
在while前的alert(obj);的输出输出值还是object
while后的alert(obj);输出值就是Null了,请问这种情况如何解决呢?
看看是什么
while(obj=obj.offsetParent)
{
t+=obj.offsetTop;
l+=obj.offsetLeft;
}这段代码其实是写的比较精妙的,用于定位html元素在页面中的绝对位置(在网上copy来copy去被用的很多)。请注意看一下,while中间用的代码是obj=obj.offsetParent,是一个赋值语句。所以这句while语句同时完成了两个动作:1.将obj赋值为它的offsetParent;2.判断obj是否为object,是的话执行while循环中的语句。
也就是说,这个循环会不断循环,直到找不到obj的offsetParent为止。这样就能够循环相加得到html元素的绝对位置。循环在结束的时候,obj是必然为null的,因为这个正是循环跳出的条件。所以说,如果你还要利用最初的obj的话,要么就直接引用Item,要么另外定义一个变量来使用。
{
t+=obj.offsetTop;
l+=obj.offsetLeft;
}
你的出错的我还没找到是那里问题,不过要回应一下你上面的问题,上面语句是当obj为null时退出循环,你在while后的alert(obj)当然是null啦。
看看是什么
返回INPUT,TD
==============
ONCLICK=setValue(this,obj)把这里的obj换成Item错误提示是:
Item未定义
==============
在定义一次变量var OBJ=Item;或者 var OBJ=window.document.getElementById(Item.id);
在ONCLICK=setValue(this,OBJ)错误提示是OBJ未定义
============================
function setValue(Item,TXT)
{
//document.all["sel"].style.display='none';
//TXT.value=Item.innerText;
}
这个函数已经不起作用了,错误就是在ONCLICK=setValue(this,OBJ)这里
<DIV ID="sel" STYLE="padding:3;height:40;BORDER: #6699CC 1px solid; POSITION: absolute;width:0;background-color:#F8F8F5;display:none;cursor:default">
</DIV>
改为
ONCLICK=setValue(this,'"+obj.uniqueID+"')obj.uniqueID返回唯一的ID号setValue中引用document.all(obj_id)来得到你要的obj.