我有一个href,它在屏幕中间打开一张照片(把它想象成fancybox/lightbox/lytebox),当用户点击网站上的任何地方时,我想关闭它,除了带有照片的div。
如何使用 jQuery 来定位它?
我有一个href,它在屏幕中间打开一张照片(把它想象成fancybox/lightbox/lytebox),当用户点击网站上的任何地方时,我想关闭它,除了带有照片的div。
如何使用 jQuery 来定位它?
使用 jQuery.not()
方法。
$(".elements").not(".this-element").on("click", function() {
$(".this-element").hide();
});
更新
正如@nnnnnn所指出的,这样做时会遇到一些复杂的传播问题。更好的方法是使用覆盖 div(z-index 小于您要隐藏的元素,如@j08691 所述),并绑定到它。
或者添加另一个处理程序(我不推荐):
$(".this-element").on("click", function(e) {
e.stopPropagation(); // ugly boilerplate to fix thoughtless bindings
);