2016-08-04 142 views
2

我想要使用下面的代码将元素的位置放到画布上。获取元素在Javascript中的位置

var x = $(".partitiondrop").position(); 
alert("Top position: " + x.top + "\nLeft position: " + x.left); 

上述工作正常。我想知道是否可以以相同的方式获取右下角位置,以便我可以使用该元素所限制的区域,因为我需要检查哪些元素落在此元素内。

+0

getBoundingCientRect() – caub

回答

3
var $partitiondrop = $(".partitiondrop"); 
var position = $partitiondrop.position(); 
position.bottom = position.top + $partitiondrop.height(); 
position.right = position.left + $partitiondrop.width(); 
alert("Top position: " + position.top + "\nLeft position: " + position.left + "\nBottom position: " + position.bottom + "\nRight position: " + position.right); 
+0

谢谢。这是有帮助的 –

3

U总是可以将宽度添加到x.left位置并将高度添加到x.top位置。

+0

对不起,我认为这是显而易见的,但同一个人写了下面的帖子。 – Verri

+0

谢谢。完成它 –

0

右的位置:

$(window).width() - ($('.partitiondrop').offset().left + $('.partitiondrop').width()); 

底部位置:

$(window).height() - $('.partitiondrop').offset().top; 
+0

感谢您的回应 –

+0

:)欢迎您。 – titan

1

要获得任何元素的位置由它的ID,你可以做以下

var elementID; //Already obtained via attr(id) method or so 
var $element = $("#" + elementID); 
var position = $element.position(); 
position.bottom = position.top + $element.height(); 
position.right = position.left + $element.width(); 

var top_position=position.top; 
var left_position=position.left; 
var bottom_position=position.bottom; 
var right_position=position.right; 
1

在jquery,可以使用foll来完成由于代码

var p = $("elementId"); 
var position = p.position(); 
$("p:last").text("left: " + position.left + ", top: " + position.top);