经常会遇到,点击某个元素,子元素显示,再次点击隐藏,并且点击其他地方,子元素同样隐藏关。
$("#ele").on("click",function(){ $("#child").toggleClass("hide"); }); $(document).click(function (e) { var e = e || window.event; //浏览器兼容性 var elem = e.target || e.srcElement; while (elem) { //循环判断至跟节点,防止点击的是div子元素 if (elem.id && elem.id == 'child') { return; } elem = elem.parentNode; } $('#child').addClass("hide"); });