注意:我正在学习jQuery,所以请原谅新问题。
我有一个灯箱库,我想要它,如果我点击图库中的“下一个”按钮,它会显示下一个图像(就像它已经做的那样),但是点击其他地方的 ,它关闭了facebox窗口弹出窗口。
我玩了很多代码,但我被困在这里:
$('#facebox :not(.image_next)').click($.facebox.close)
我去的地方是,(翻译):
“在ID为 facebox 的div中,除非点击位于 image next 类,否则请关闭面板框窗口。”
不幸的是,无论我点击哪里,这都关闭了窗口,包括在那个类的img上。
任何帮助都会摇滚。
答案 0 :(得分:0)
点击事件从“下一步”按钮冒泡到其父级,即#facebox
div。
在“下一步”按钮的点击处理程序中调用event.stopPropagation()
,以阻止您的处理程序在#facebox
上“看到”该事件。
答案 1 :(得分:0)
$('#facebox :not(.image_next)').click($.facebox.close)
这正是你所说的你想要的。注意。
相反,请尝试
$('#facebox :not(.image_next), <other objects in windows>').click($.facebox.close);
发生的事情是你只是说一切而是'.image_next',其中包括你脸盒内的图像。因此,使用Firebug来确定您需要排除的其他对象,或者仅绑定到您真正想要取消事件的对象。