js获取鼠标点击元素的位置,在vue中。

鼠标点击元素后, js获取该元素相对于浏览器左上角的位置偏移, 现在只有鼠标点击的event

clipboard.png

回答:

看了下你的解決方法,但是其實不用那麼複雜,原生的 dom 就有提供一個 getBoundingClientRect() 方法可以取得元素相對於瀏覽器的位置,而且兼容到 IE 8

你可以這樣使用它:

showPopup: function(e){
    var rect = e.target.getBoundingClientRect()
    this.popup.x = rect.left
    this.popup.y = rect.top
}

回答:

没看懂你的代码。

按你的描述写了个例子。http://runjs.cn/code/ubnuxnpj

Runjs 运行有点卡,你可以复制下来试试。我本地是完全不会卡顿的。

回答:

event为鼠标点击元素的事件
e.target 可以获取到当前点击的元素,然后使用jquery方法获取元素位置

代码:

showPopup:function(e){
    var pos = $(e.target).offset();
    console.log(pos);
}

暂无评论

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注