我正在尝试通过jquery模拟消息编写器。 例如,在第一次单击按钮2时 我需要得到一个“a”,第二个是第三次点击“b”和“c”。 我遇到了困难,因为如果我点击3次就会完成所有操作, 它不只是打印“c”。 感谢
var letters = [];
$('#2').click(function (e) {
letters.push('a');
$('#2').click(function (e) {
letters.push('b');
$('#2').click(function (e) {
letters.push('c');
})
})
$('#mytext').append(letters);
})
好的,所以如果我在按钮“#2”上点击两次,我会得到3“a”,我只需要一个“b”而不是
答案 0 :(得分:0)
使用计时器在每次点击时存储变量和运行功能中的点击次数。如果计时器在下一次点击之前完成,它将根据变量中的当前数字打印字符,否则它将重置计时器。这是示例代码..
var counter=0;
var timerId=null;
$(document).click(function(){
counter++;
if (timerId != null)
clearTimeout(timerId);
// Executes after 500 milisecond .. You can increase the timer value..
timerId = setTimeout(checkClickCount, 500);
});
function checkClickCount()
{
switch(counter)
{
case 1:
alert('a');
break;
case 2:
alert('b');
break;
case 3:
alert('c');
break;
}
counter=0;
}