UNPKG

@yiero/gmlib

Version:

GM Lib for Tampermonkey/ScriptCat

83 lines (82 loc) 1.74 kB
/** * 模拟点击选项接口 */ export interface ISimulateClickOptions { /** * 鼠标按钮类型 * @default 'left' */ button?: 'left' | 'right' | 'middle'; /** * 事件是否冒泡 * @default true */ bubbles?: boolean; /** * 事件是否可取消 * @default true */ cancelable?: boolean; /** * 视口X坐标 * @default 0 */ clientX?: number; /** * 视口Y坐标 * @default 0 */ clientY?: number; /** * 是否按下Shift键 * @default false */ shiftKey?: boolean; /** * 是否按下Ctrl键 * @default false */ ctrlKey?: boolean; /** * 是否按下Alt键 * @default false */ altKey?: boolean; /** * 是否按下Meta键(Command键) * @default false */ metaKey?: boolean; /** * 点击次数 * @default 1 */ detail?: number; } /** * 模拟鼠标点击事件 * * 在指定元素上触发完整的鼠标点击事件序列(mousedown → click → mouseup)。 * 支持自定义鼠标按钮、坐标位置和修饰键状态。 * * @param target 目标元素,将在此元素上触发点击事件 * @param options 点击选项配置 * * @example * // 模拟左键点击按钮 * const button = document.querySelector('#submit-btn'); * simulateClick(button); * * @example * // 模拟右键点击 * simulateClick(element, { button: 'right' }); * * @example * // 模拟带修饰键的点击 * simulateClick(element, { * button: 'left', * ctrlKey: true, * shiftKey: false * }); */ export declare function simulateClick(target: HTMLElement, options?: ISimulateClickOptions): void;