0

如果我编写自定义 JQuery 模式窗口或“灯箱”,禁用 div 之外的所有锚标记和其他可点击元素的机制是什么?

您以某种方式捕获所有事件并测试以查看 div 矩形内是否有命中并将所有其他事件扔掉?

我对如何创建暗淡或透明的叠加层不感兴趣。 这个问题之前被问过,但答案集中在覆盖而不是禁用元素上。

4

2 回答 2

0

最简单的方法确实是覆盖。叠加层捕获所有点击,覆盖其下的元素。如果你不想让它可见,就让它透明。

于 2011-12-03T10:55:43.407 回答
0

要禁用所有链接,您只需使用以下代码:

var modal = false;

$('body').delegate('a', 'click', function(){
    if(modal){
        return false;
    }
});

然后,当您显示灯箱时,只需更改 modal = true。

于 2011-12-03T13:00:17.393 回答