在simon游戏中,当向用户显示系列时,我希望跨度(彩色象限)不可点击。目前我正在使用此功能,在动画设置时将pointer-events:none
添加到范围。
function toggleUnclickable(){
//unclickable class has the css property pointer-events:none
$("#1").toggleClass("unclickable");
$("#2").toggleClass("unclickable");
$("#3").toggleClass("unclickable");
$("#4").toggleClass("unclickable");
}
我在动画开始前和动画结束后调用此函数。
function animateGeneratedPattern() {
toggleUnclickable();
function animateNextPattern(lightup) {
.... // code for animation
}
animateNextPattern(true);
toggleUnclickable();
}
但是,当跨度动画时,我仍然能够点击?我有什么不对劲吗?
答案 0 :(得分:1)
onclick = animateNextPattern('你的patameter',这个)//在这里传递this关键字
function animateNextPattern(lightup,ele) {
if(!$(ele).hasClass('unclickable'))
{
Please write your code here ----
}
}
答案 1 :(得分:1)
尝试在元素中使用它来启用和禁用点击:
$( "#myElement").unbind( "click" ); //disable click
$( "#myElement").bind( "click" ); //enable
答案 2 :(得分:0)
你可以return true
& false
启用/禁用点击
function toggleclick(bol){
//unclickable class has the css property pointer-events:none
$("#1 ,#2,#3,#4").click(function(event) {
return bol;
});
}
function animateGeneratedPattern() {
toggleUnclickable(false);
function animateNextPattern(lightup) {
.... // code for animation
}
animateNextPattern(true);
toggleUnclickable(true);
}
答案 3 :(得分:0)
你可以使用jQuery提供的.off()和.on()方法。无论何时你想要解除绑定事件,你都可以使用.off()然后通过on()
附加它$( "body" ).on( "click", "#theone", function(){} ) //To attach
$( "body" ).off("click","#theone",function(){}) //To remove
可以在此处阅读更多参考资料http://api.jquery.com/off/