0

我通过 jquery kendu-ui 有一个直接的可拖动模式窗口。

我的目标是简单地获取top left模态相对于浏览器窗口的位置的屏幕坐标...我正在尝试offsetgetBoundingClientRect()方法,下面只是一些尝试的示例,所有尝试都是不断控制台日志记录0, 0, ..我在这里做错了什么?

 let ktop = $(".k-window").offset().top;
 let ktlft = $(".k-window").offset().left;
 console.log(ktop + " " + ktlft);

 let ktl = document.querySelector('.k-window');
 let procoords = ktl.getBoundingClientRect();

 let ktl = document.querySelector('.k-window');
 let ktlTop = ktl.offsetTop;
 let ktlLeft = ktl.offsetLeft;
4

1 回答 1

0

Kendo 默认创建两个.k-window元素,一个用于可拖动目的,另一个用于“物理”窗口。您的尝试总是将第一个堆栈到顶部 0 并使用 0 离开 0 visibility: visible,但使用display: none.

选项之一是k-window通过您的窗口 id 查找包装器:

$('#my-window').closest('.k-window');

示例:获取偏移量

于 2020-04-20T11:23:18.637 回答