我正在尝试在 Blazor 中实现为可移动的组件,但我不确定如何将 JavaScript 转换为 Blazor。我通常是为了实现类似的目标:https ://stackoverflow.com/a/47596086/767942
- 如何处理 @onmousedown 并将其转换为 Blazor 以实现上例中的可移动 <div>?
我正在尝试在 Blazor 中实现为可移动的组件,但我不确定如何将 JavaScript 转换为 Blazor。我通常是为了实现类似的目标:https ://stackoverflow.com/a/47596086/767942
这是使用ondragstart
andondragend
事件来制作可移动“弹出窗口”的另一种方法。
<div draggable="true"
@ondragend="OnDragEnd" @ondragstart="OnDragStart"
style="position:absolute; top: @(offsetY)px; left: @(offsetX)px; border-color: black;">
<div>your content</div>
</div>
@code
{
private double startX, startY, offsetX, offsetY;
private void OnDragStart(DragEventArgs args) {
startX = args.ClientX;
startY = args.ClientY;
}
private void OnDragEnd(DragEventArgs args)
{
offsetX += args.ClientX - startX;
offsetY += args.ClientY - startY;
}
}