Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery outterHeight和outterWidth查找给定元素的右边缘和下边缘_Javascript_Jquery_Dom - Fatal编程技术网

Javascript jQuery outterHeight和outterWidth查找给定元素的右边缘和下边缘

Javascript jQuery outterHeight和outterWidth查找给定元素的右边缘和下边缘,javascript,jquery,dom,Javascript,Jquery,Dom,我正在阅读jquery文档,我认为outterHeight/outterWidth是我想要的。但我不知道如何使用它来满足我的需要 总的来说,我有一个元素,我想添加一个子菜单,点击后,我希望这个菜单直接排列在触发器元素下面。但是我需要menu元素的右边缘与trigger元素的右边缘对齐。我相信,只要一点点尝试和错误,我就可以找到它的边缘,以及它们在窗口/屏幕/任何地方的位置。这样我就能把它们推到位 我选择这条路线的关键原因是,这个菜单元素被附加到分散在UI中的少数触发器元素上,并为给定的触发器元素

我正在阅读jquery文档,我认为outterHeight/outterWidth是我想要的。但我不知道如何使用它来满足我的需要

总的来说,我有一个元素,我想添加一个子菜单,点击后,我希望这个菜单直接排列在触发器元素下面。但是我需要menu元素的右边缘与trigger元素的右边缘对齐。我相信,只要一点点尝试和错误,我就可以找到它的边缘,以及它们在窗口/屏幕/任何地方的位置。这样我就能把它们推到位

我选择这条路线的关键原因是,这个菜单元素被附加到分散在UI中的少数触发器元素上,并为给定的触发器元素动态地重新创建


不管怎样,有人知道实现我目标的好方法吗?超高/超宽是我的理想解决方案吗?

我认为更好的解决方案是使用
偏移量
位置
,例如jQuery UI日期选择器就是这样做的。您可以在
body
级别创建菜单,并根据触发菜单的元素的偏移量对其进行定位。

重要的是要认识到,该位置为您提供了与父元素的偏移量,而偏移量用于完整的浏览器文档。尽管与body和元素相结合,偏移量返回了什么有问题吗?所以,除非您尝试对齐的元素与需要对齐的元素位于同一父元素内,否则请使用offset()。left。如果你需要它与右边对齐,你必须对对象的宽度做一些数学计算。@Jacob:没错,对于这种情况,我认为
offset
更合适。