【问题标题】:How to get the position of an element using .offset()如何使用 .offset() 获取元素的位置
【发布时间】:2012-10-29 16:44:13
【问题描述】:

我有一个表格,其中有一个隐藏在单元格中的菜单,我使用slideToggle() 展开该单元格。这个菜单有几个<img> onclick= 调用一个函数并传递元素和一个数字。现在我正在尝试获取进行调用的元素的位置,以便我可以动态创建覆盖<div>。问题是我没有得到位置值,我不知道为什么。 HERE 是我正在尝试做的一个小例子。有人可以帮忙吗?

【问题讨论】:

    标签: jquery position offset


    【解决方案1】:

    我认为问题在于您对 $(this) 的使用。您正在将被点击的元素传递到您的函数中,因此您需要使用它。我还更新了您的警报以显式输出左侧偏移量,因为偏移量只会返回一个对象。您可以改为使用 console.log 来检查返回的对象(在 chrome 等浏览器中):

    window.somefunc = function(el,id){
        var pos = $(el).offset();
        alert(pos.left);
    }
    

    我在这里更新了你的 JSFiddle:http://jsfiddle.net/gRfnb/22/

    【讨论】:

    • 哇,谢谢,我非常专注于this,并没有意识到参数名称。愚蠢的错误......谢谢你
    • 简单易行,我已经记不清在调试时错过了多少次简单的错误。
    猜你喜欢
    • 2015-10-07
    • 1970-01-01
    • 2011-09-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-02
    相关资源
    最近更新 更多