使用var id抓取图像位置

时间:2014-11-18 19:48:15

标签: javascript jquery css

我在动态ID的页面上动态显示了许多图像。

我想在点击时抓住图像的位置,这样我就可以调整另一个元素的位置。

我的代码似乎不起作用:

    var selImg = $(this).attr('id');

    var pos = $(selImg).position();
    alert(pos.top);

我得到一个JS错误说" pos"未定义。

3 个答案:

答案 0 :(得分:0)

您将selImg设置为id的{​​{1}}。

您需要将$(this)设置为selImg才能正确选择元素。现在,您正尝试在字符串上调用$(this)

答案 1 :(得分:0)

如果你匿名呼叫,

var pos = $(this).position()
alert(pos.top);

或使用id

调用它
var pos = $('#id').position()
alert(pos.top);

答案 2 :(得分:0)

$('img').click(function(){
    var position = getPosition(this);
});

//Found this function online
function getPosition(element) {
    var xPosition = 0;
    var yPosition = 0;

    while(element) {
        xPosition += (element.offsetLeft - element.scrollLeft + element.clientLeft);
        yPosition += (element.offsetTop - element.scrollTop + element.clientTop);
        element = element.offsetParent;
    }
    return { x: xPosition, y: yPosition };
}