Realtek/doc/testButtonClicks.js
2025-11-25 10:21:47 +08:00

58 lines
2.0 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// 测试短按处理逻辑的示例脚本
const buttonHandler = require('./buttonClickHandler');
console.log('开始测试短按处理逻辑...\n');
// 测试场景1: 短按1下
testSingleClick();
// 测试场景2: 短按2下 (双击)
setTimeout(testDoubleClick, 1000);
// 测试场景3: 短按10下 (十连击)
setTimeout(testTenClicks, 3000);
// 测试场景4: 混合点击模式(单击后双击)
setTimeout(testMixedClicks, 6000);
function testSingleClick() {
console.log('===== 测试场景1: 短按1下 =====');
buttonHandler.simulateSingleClick();
}
function testDoubleClick() {
console.log('\n===== 测试场景2: 短按2下 (双击) =====');
buttonHandler.simulateDoubleClick();
}
function testTenClicks() {
console.log('\n===== 测试场景3: 短按10下 (十连击) =====');
buttonHandler.simulateTenClicks();
}
function testMixedClicks() {
console.log('\n===== 测试场景4: 混合点击模式 =====');
console.log('先单击一次:');
buttonHandler.simulateSingleClick();
setTimeout(() => {
console.log('\n然后双击:');
buttonHandler.simulateDoubleClick();
// 程序结束提示
setTimeout(() => {
console.log('\n\n所有测试完成!');
console.log('\n总结:');
console.log('1. 短按1下: 通过单击事件触发会执行handleSingleClick()');
console.log('2. 短按2下: 通过双击事件触发会执行handleDoubleClick()');
console.log('3. 短按10下: 通过连续快速点击10次触发会执行handleTenClicks()');
console.log('\n实现原理:');
console.log('- 使用定时器和时间阈值区分不同的点击序列');
console.log('- 记录点击次数,超时后根据次数执行相应逻辑');
console.log('- 可以轻松扩展支持更多次数的点击模式');
}, 1000);
}, 1000);
}
console.log('\n测试将按顺序自动执行请查看输出结果...');
console.log('注意: 各个测试场景之间有时间间隔,以便清晰观察输出\n');