我在触发器上创建了一个 jQuery 工具的覆盖,如下所示:
$('button').overlay(
{
...
});
以后如何禁用和重新启用覆盖?我希望我的$('button')
元素保留为链接,但我不想在点击时显示叠加层,而是要显示警报?
类似的东西:
if( needToDisableOverlay() )
{
$('button').overlay().disable(); // no such thing...
$('button').bind( 'click.alert', function()
{
alert( 'The overlay has been disabled' );
});
}
// later on
if( needToEnableOverlay() )
{
$('button').unbind( 'click.alert' );
$('button').overlay().enable(); // no such thing...
}
我知道我可以使用
$('button').unbind('click');
从按钮中删除所有单击处理程序(包括 Overlay load()函数),但我认为这不是一种干净的方法,特别是如果我有其他要维护的单击处理程序。
也许我可以在 Overlay 的onBeforeLoad处理程序中使用标志,如果设置了标志,则返回 false ?
实现这一目标的正确方法是什么?