Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在jQuery/JS中临时禁用PatternLock_Javascript_Jquery_Javascript Events - Fatal编程技术网

Javascript 在jQuery/JS中临时禁用PatternLock

Javascript 在jQuery/JS中临时禁用PatternLock,javascript,jquery,javascript-events,Javascript,Jquery,Javascript Events,我正在使用一个第三方库,使用js和jQuery模拟3x3 android模式锁屏 回购: 仿真器: 我想在PatternLock.prototype中添加disable和enable函数,以禁用用户在运行例程保存以前绘制的图案时绘制新图案的能力。因此,用户需要能够看到他们的模式,但在例程结束并重新启用锁之前,不能绘制新模式 最好的方法是什么?内置事件处理程序是匿名函数,因此我避免使用.off和.on。添加类patt hidden仍然允许新图案在绘制后显示,而不是在绘制时显示。有人知道该往哪个方向

我正在使用一个第三方库,使用js和jQuery模拟3x3 android模式锁屏

回购:

仿真器:

我想在PatternLock.prototype中添加disable和enable函数,以禁用用户在运行例程保存以前绘制的图案时绘制新图案的能力。因此,用户需要能够看到他们的模式,但在例程结束并重新启用锁之前,不能绘制新模式


最好的方法是什么?内置事件处理程序是匿名函数,因此我避免使用.off和.on。添加类patt hidden仍然允许新图案在绘制后显示,而不是在绘制时显示。有人知道该往哪个方向走,或者以前尝试过为此编写一个禁用方法吗?

这是不雅观的,但我能够通过向pattern.js添加一个全局布尔值var disabled=false来解决这个问题,在PatternLock原型中,该函数在两个helper函数enabled和disabled中进行切换。然后在每个事件处理程序的开头运行一个检查,如果disabled==true,则该事件处理程序将退出。选定的最新模式保持可见,但锁定会抛出空的单击事件,直到重新启用


我希望听到一个更有效的解决方案。

patternLock 0.4.0+现在在core中有启用禁用方法

要禁用/启用,您可以使用

var lock = patternLock('#patternHolder');
lock.disable();
lock.enable();