我想在点击按钮 #firstBtn
后 5 秒内暂时忽略该按钮上的任何点击事件。
Template.sidebar.events({
'click #firstBtn': function () {
//...
}
})
如何做到这一点?调查了一下
$('#firstBtn').unbind('click', eventHandler)
Meteor.setTimeout(function(){
$('#firstBtn').bind('click', eventHandler)
}, 5000)
但是我们应该如何引用模板sidebar
中的点击事件处理程序?
最佳答案
尝试这样的事情:
首先,初始化一个变量来设置超时,并初始化一个变量来表示按钮是否已被单击。这是条件语句所必需的。
var timeout = 5000; //5000 milliseconds is equal to 5 seconds
var isClickable = true;
然后,尝试一些像这样的条件测试:
$('#firstBtn').click(function(){
if(isClickable){
...
//standard link handling code
...
isClickable = false;
setTimeout(function(){isClickable = true;},timeout)
}else{
return;
}
});
这将仅允许在超时完成时执行点击事件的处理代码。
<小时/>祝你好运!
关于javascript - 暂时忽略Meteor Template中的点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26620208/