我正在开发游戏扫雷的实现。在右键单击事件中,我将使用标记的图块图像交换空白图块图像。虽然标记了tile,但我正在调用.off(“click”)来禁用单击事件。但是,当我再次右键单击标记的tile以删除标记时,我想在tile上重新启用click事件。这是我因为调用.on(“click”)没有恢复点击事件功能而陷入困境。
你能告诉我这段代码有什么问题吗?
//Disable contextmenu on right click
document.oncontextmenu = function() {return false;};
//set or remove flags on right click
$(".tile").mousedown(function(e){
if( e.button == 2 ) {
var oldsrc = $(this).attr('src');
var src = '';
if (oldsrc == 'img/tile.ico'){
src = 'img/tile3.ico';
$(this).off("click");
}
if (oldsrc == 'img/tile3.ico'){
src = 'img/tile.ico';
$(this).on("click");
}
$(this).attr('src', src);
return false;
}
return true;
});