要保存拖动小部件的位置,您可以使用本地存储或数据库来存储小部件的位置信息。以下是使用本地存储(localStorage)的示例代码:
HTML:
JavaScript:
// 获取小部件元素
var widget = document.getElementById('widget');
// 从本地存储中获取保存的位置信息
var widgetPosition = localStorage.getItem('widgetPosition');
if (widgetPosition) {
// 将保存的位置应用到小部件
widget.style.left = widgetPosition.split(',')[0];
widget.style.top = widgetPosition.split(',')[1];
}
// 拖动小部件时保存位置信息
widget.addEventListener('mousedown', function(e) {
var startX = e.clientX;
var startY = e.clientY;
function moveWidget(e) {
var deltaX = e.clientX - startX;
var deltaY = e.clientY - startY;
var widgetX = parseInt(widget.style.left || 0);
var widgetY = parseInt(widget.style.top || 0);
widget.style.left = widgetX + deltaX + 'px';
widget.style.top = widgetY + deltaY + 'px';
startX = e.clientX;
startY = e.clientY;
}
function stopMovingWidget() {
// 保存小部件的位置信息到本地存储
localStorage.setItem('widgetPosition', widget.style.left + ',' + widget.style.top);
window.removeEventListener('mousemove', moveWidget);
window.removeEventListener('mouseup', stopMovingWidget);
}
window.addEventListener('mousemove', moveWidget);
window.addEventListener('mouseup', stopMovingWidget);
});
这段代码首先获取小部件的元素,并从本地存储中获取保存的位置信息。如果存在保存的位置信息,则将其应用到小部件的样式中。
然后,当用户按下鼠标左键时,记录当前鼠标的坐标,并在鼠标移动时计算鼠标移动的距离,将小部件的位置相应地更新。
最后,当用户释放鼠标左键时,保存小部件的当前位置信息到本地存储中。
上一篇:保存退出后的计时器并加载它
下一篇:保存图片1时是白色不是黑色。