获取可拖动的偏移量 kendo window
get offset of draggable kendo window
我怎样才能得到offset();我的 kendo window 在被拖动时...例如,在 jQuery UI 中,下面的作品:
$('#easterEgg').draggable(
{
drag: function(){
var offset = $(this).offset();
var xPos = offset.left;
var yPos = offset.top;
$('#posX').text('x: ' + xPos);
$('#posY').text('y: ' + yPos);
}
});
但是当我尝试将相同的内容与 kendo ui 合并时,我什么也没得到:尝试了下面的几个变体,没有错误,只是没有输出。我怎样才能对 kendo ui 做同样的事情?
$("#easterEgg").kendoWindow({
draggable: true,
drag: function(){
var offset = $(this).offset();
var xPos = offset.left;
var yPos = offset.top;
$('#posX').text('x: ' + xPos);
$('#posY').text('y: ' + yPos);
}
});
您的代码中有一些错误。
首先,没有drag
事件,请查看docs. You have to use dragstart
or dragend
。
第二个问题是 javascript 框架在功能上各不相同。因为 jQuery UI 中的 this
是模式的元素并不意味着它对所有其他框架都是相同的。在大多数情况下,On Kendo UI this
关键字是小部件的实例,这比仅引用目标元素更有意义。小部件的实例有一个名为 element
的 属性,它是创建小部件的目标元素。
鉴于此,您的代码应该是:
dragstart: function() { // or dragend
let offset = $(this.element).offset();
}
我怎样才能得到offset();我的 kendo window 在被拖动时...例如,在 jQuery UI 中,下面的作品:
$('#easterEgg').draggable(
{
drag: function(){
var offset = $(this).offset();
var xPos = offset.left;
var yPos = offset.top;
$('#posX').text('x: ' + xPos);
$('#posY').text('y: ' + yPos);
}
});
但是当我尝试将相同的内容与 kendo ui 合并时,我什么也没得到:尝试了下面的几个变体,没有错误,只是没有输出。我怎样才能对 kendo ui 做同样的事情?
$("#easterEgg").kendoWindow({
draggable: true,
drag: function(){
var offset = $(this).offset();
var xPos = offset.left;
var yPos = offset.top;
$('#posX').text('x: ' + xPos);
$('#posY').text('y: ' + yPos);
}
});
您的代码中有一些错误。
首先,没有drag
事件,请查看docs. You have to use dragstart
or dragend
。
第二个问题是 javascript 框架在功能上各不相同。因为 jQuery UI 中的 this
是模式的元素并不意味着它对所有其他框架都是相同的。在大多数情况下,On Kendo UI this
关键字是小部件的实例,这比仅引用目标元素更有意义。小部件的实例有一个名为 element
的 属性,它是创建小部件的目标元素。
鉴于此,您的代码应该是:
dragstart: function() { // or dragend
let offset = $(this.element).offset();
}