A lightweight draggable library.
此腳本不應該直接安裝,它是一個供其他腳本使用的函式庫。欲使用本函式庫,請在腳本 metadata 寫上: // @require https://update.greasyfork.org/scripts/587662/1879553/Element%20Draggable.js
A JavaScript library for dragging elements, usable in Tampermonkey scripts or regular web pages.
const element = document.querySelector('#element');
const handle = document.querySelector('#handle');
const options = {
handle: handle,
savePosition: true,
id: 'example'
};
const drag = new Draggable(element, options);
| Parameter | Type | Default | Description |
|---|---|---|---|
| handle | HTMLElement | element | Specifies the drag handle. |
| savePosition | boolean | false | Whether to save the element position. |
| id | string | null | Unique identifier used for saving the position. Only works when savePosition is true. |
id must be provided when position saving is enabled.// @grant GM_getValue
// @grant GM_setValue
With these permissions, position data will be stored through the userscript manager and can persist across pages.
If the permissions are not declared, position data will be stored in the current page's localStorage.
When the dragging functionality is no longer needed or the element is removed, the instance should be manually destroyed to release resources and remove event listeners.
drag.destroy();