UNPKG

@mdui/jq

Version:

拥有和 jQuery 相似 API 的轻量级 JavaScript 工具库

69 lines (68 loc) 2.21 kB
import type { PlainObject } from '../shared/helper.js'; declare module '../shared/core.js' { interface JQStatic { /** * `value` 为 `undefined` 时,相当于 `$.data(element, key)`,即获取指定元素上存储的数据 * * Note: 该方法不检索 `data-*` 属性 * * @param element 用于存储数据的元素 * @param key 数据键名 * @param value `undefined` * @example ```js data(document.body, 'type', undefined) ``` */ data(element: Element | Document | Window, key: string, value: undefined): unknown; /** * 在指定元素上存储数据,返回存储的值 * @param element 用于存储数据的元素 * @param key 数据键名 * @param value 数据值 * @example ```js data(document.body, 'type', 'image') // 'image' ``` */ data<T>(element: Element | Document | Window, key: string, value: T): T; /** * 获取在指定元素上存储的数据 * * Note: 该方法不检索 `data-*` 属性 * * @param element 用于存储数据的元素 * @param key 数据键名 * @example ```js data(document.body, 'key') ``` */ data(element: Element | Document | Window, key: string): unknown; /** * 获取指定元素上存储的所有数据 * * Note: 该方法不检索 data-* 属性 * * @param element 用于存储数据的元素 * @example ```js data(document.body) // { 'type': 'image', 'width': 1020, 'height': 680 } ``` */ data(element: Element | Document | Window): PlainObject; /** * 在指定元素上存储数据,返回存储的键值对数据 * @param element 用于存储数据的元素 * @param data 键值对数据 * @example ```js data(document.body, { 'width': 1020, 'height': 680 }) // { 'width': 1020, 'height': 680 } ``` */ data<T extends PlainObject>(element: Element | Document | Window, data: T): T; } }