使用jquery的link元素的绝对位置

时间:2013-06-15 20:35:41

标签: javascript jquery position

我编写了一个jquery来查找每个链接元素的绝对位置,如下所示:

$(document).ready(function(){
  $("a[href]").each(function(){
    var x = $(this).offset().left;
    var y = $(this).offset().top;
    ......
  });
});

但是,如果它对您只能将鼠标悬停在其容器上时才能看到的链接不起作用。例如,在http://illinois.edu的页面上,有一个名为“未来学生”的链接。如果你将鼠标悬停在那里,会弹出更多链接,一个是“本科入学”,但这个链接会给我x = 0和y = 0,而“未来学生”给我正确的位置。其他一些例子如http://web.cs.toronto.edu/,顶部绿色栏中会弹出一些链接。那些链接会给我y =一些负数。那么我怎样才能获得这些“弹出链接”的绝对位置?谢谢!

1 个答案:

答案 0 :(得分:1)

如果链接被隐藏( display:none ),您将无法获得他们的位置 -

来自API

  

注意:jQuery不支持获取隐藏的偏移坐标   元素或计算边界,边距或填充   身体元素。

     

虽然可以获得元素的坐标   visibility:hidden set,display:none从渲染中排除   树,因此有一个未定义的位置。