jquery 弹出层问题
我用jquery把一个隐藏的div弹出来了并且显示在页面中间,现在我想点击除了这个层以外的任何一个地方来隐藏这个层。(注意:是在弹出层显示的时候点其他地方才隐藏,不然这个...
我用jquery把一个隐藏的div弹出来了并且显示在页面中间,现在我想点击除了这个层以外的任何一个地方来隐藏这个层。(注意: 是在弹出层显示的时候点其他地方才隐藏,不然这个层是不会显示的)
高手在哪里??? 展开
高手在哪里??? 展开
4个回答
2011-12-02
展开全部
实现这种功能一般是弹出了两个层,一个满屏的透明层和一个你要显示的层,显示层覆盖在透明层之上,透明层增加点击响应,隐藏显示层和透明层。
这样,才不会响应到原页面已绑定的点击事件。
建议使用fancybox插件实现。调用简单,效果够炫。
这样,才不会响应到原页面已绑定的点击事件。
建议使用fancybox插件实现。调用简单,效果够炫。
追问
贴点简单的代码,不要复杂的,你就重点写弹出满屏的透明层的样式属性,和其他需要写的属性
追答
fffffffff
fffffff
ffffffff
xxxxxxxxx
$("#overlay").click(function(){
$("#overlay").hide();
$("#wrap").hide();
});
$("#x").click(function(){
$("#overlay").show();
$("#wrap").show();
return false;
});
js代码请自行放入相应位置
展开全部
$("#showdiv").show(function(){
$(document).bind("click", function(e){
if (e.target.getAttribute("id") != "showdiv"){//判断是否显示层
$(this).unbind("click");
$("#showdiv").hide();
}
});
});
$(document).bind("click", function(e){
if (e.target.getAttribute("id") != "showdiv"){//判断是否显示层
$(this).unbind("click");
$("#showdiv").hide();
}
});
});
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以给body一个点击事件 点的时候 影藏div
注意弹出div要阻止冒泡
注意弹出div要阻止冒泡
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$(document).mousedown(
function(event){
if(event.target!=dobj){ //dboj 是div
$(dobj).hide(1000);
}
}
);
// 这里页面只能有单个事件,多个会有冲突.
function(event){
if(event.target!=dobj){ //dboj 是div
$(dobj).hide(1000);
}
}
);
// 这里页面只能有单个事件,多个会有冲突.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询