问题描述
我想做一个弹出层.input的失去焦点的时候.[点击层内的link不关闭该层.点击该层外则关闭该层]这个jquery.应该怎么写啊!
解决方案
一楼的做法是可行的,但是比较繁琐。我的做法如下://层内的link点击事件,注意让事件停止冒泡$(".inner-link").click(function(event){event=event||window.event;event.stopPropagation();});//点击层外,隐藏这个层。由于层内的事件停止了冒泡,所以不会触发这个事件$(document).click(function(e){ $(".city-list").hide();});
解决方案二:
思路是: 给当前 document 绑定一个鼠标单击事件. 然后通过事件源event来获取触发事件的对象target,,,判断div层是否包含此对象.如果包含表示点击的是div,不隐藏. 如果不在div对象中,则隐藏.
时间: 2024-08-30 16:11:32