如何用JS 获取DIV的坐标位置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用JS 获取DIV的坐标位置相关的知识,希望对你有一定的参考价值。
asp 中如何用JS获取多个 DIV的位置坐标 , DIV 可以拖动的那种
js获取DIV的位置坐标的方法有三种,分别如下:方法一:
?
var odiv=document.getElementByIdx_x(\'divid\');
alert(odiv.getBoundingClientRect().left);
alert(odiv.getBoundingClientRect().top);
方法二:
?
function CPos(x, y)
this.x = x;
this.y = y;
function GetObjPos(ATarget)
var target = ATarget;
var pos = new CPos(target.offsetLeft, target.offsetTop);
var target = target.offsetParent;
while (target)
pos.x += target.offsetLeft;
pos.y += target.offsetTop;
target = target.offsetParent
return pos;
var obj = document.getElementByIdx_x(\'divid\')
alert(GetObjPos(obj)[\'x\']) //x坐标
alert(GetObjPos(obj)[\'y\']) //y坐标
方法三:
?
function getElementPos(elementId)
var ua = navigator.userAgent.toLowerCase();
var isOpera = (ua.indexOf(\'opera\') != -1);
var isIE = (ua.indexOf(\'msie\') != -1 && !isOpera); // not opera spoof
var el = document.getElementByIdx_x(elementId);
if (el.parentNode === null || el.style.display == \'none\')
return false;
var parent = null;
var pos = [];
var box;
if (el.getBoundingClientRect) //IE
box = el.getBoundingClientRect();
var scrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
var scrollLeft = Math.max(document.documentElement.scrollLeft, document.body.scrollLeft);
return
x: box.left + scrollLeft,
y: box.top + scrollTop
;
else
if (document.getBoxObjectFor) // gecko
box = document.getBoxObjectFor(el);
var borderLeft = (el.style.borderLeftWidth) ? parseInt(el.style.borderLeftWidth) : 0;
var borderTop = (el.style.borderTopWidth) ? parseInt(el.style.borderTopWidth) : 0;
pos = [box.x - borderLeft, box.y - borderTop];
else // safari & opera
pos = [el.offsetLeft, el.offsetTop];
parent = el.offsetParent;
if (parent != el)
while (parent)
pos[0] += parent.offsetLeft;
pos[1] += parent.offsetTop;
parent = parent.offsetParent;
if (ua.indexOf(\'opera\') != -1 || (ua.indexOf(\'safari\') != -1 && el.style.position == \'absolute\'))
pos[0] -= document.body.offsetLeft;
pos[1] -= document.body.offsetTop;
if (el.parentNode)
parent = el.parentNode;
else
parent = null;
while (parent && parent.tagName != \'BODY\' && parent.tagName != \'html\') // account for any scrolled
ancestors
pos[0] -= parent.scrollLeft;
pos[1] -= parent.scrollTop;
if (parent.parentNode)
parent = parent.parentNode;
else
parent = null;
return
x: pos[0],
y: pos[1]
;
var xd = getElementPos("divid");
alert(xd.x);
alert(xd.y); 参考技术A
div事先在输入框的下面的而且是隐藏的,当点击表情图标,div通过onclick激活JS某个函数,该函数内必须会有一段使隐藏的div显示出来的方法语句,是通过这样个流程实现的。
怎样去定位这个表情DIV的位置的,这个css里面有一个叫position的方法,利用坐标x,y实现div位置任意改变。
把div设置成相对定位或绝对定位,总之是让其拥有left,top值,当鼠标移进div的时候获取鼠标的坐标,用鼠标的left减去div的left值就是鼠标在div里面的left值,即鼠标在div中的x坐标,
同理,用鼠标的top值减去div的top值就是鼠标在div里面的top值,即鼠标在div中的y坐标。
var left=document.getElementById["div1"].style.left; 参考技术D 多个?你是用动作触发 还是就是想先获得?
abaqus 如何用python输出坐标 不是在后处理当中。就是在建模当中 我需要获取一些点的坐标信息
可以有两种做法:第一种:在输出场里面增加‘COORD’这样就可以在后续提取的时候直接提取‘COORD’场里面的DATA就是,节点在当前的坐标值;
第二种:提取提取初始坐标,然后提取‘U’场中的数据,和初始坐标求和计算就可以得到当前节点的坐标位置。 参考技术A 会使用宏录制吗? 会的话 建模过程中 用query 提取点坐标, 然后在rpy文件中 找提取坐标的语句就可以了。 参考技术B 这是个技术问题,不会
以上是关于如何用JS 获取DIV的坐标位置的主要内容,如果未能解决你的问题,请参考以下文章