Javascript 单击任意位置关闭汉堡包菜单
我已经看到这个问题已经被回答了很多次,我无法让它对我起作用。 我想把一个汉堡包菜单放在我的网站上,当在页面上点击菜单以外的任何地方时,它就会关闭。 我使用的JQuery是:Javascript 单击任意位置关闭汉堡包菜单,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我已经看到这个问题已经被回答了很多次,我无法让它对我起作用。 我想把一个汉堡包菜单放在我的网站上,当在页面上点击菜单以外的任何地方时,它就会关闭。 我使用的JQuery是: $(document).ready(function() { $(".cross").hide(); $(".menu").hide(); $(".hamburger").click(function() { $(".menu").slideToggle("slow", functio
$(document).ready(function() {
$(".cross").hide();
$(".menu").hide();
$(".hamburger").click(function() {
$(".menu").slideToggle("slow", function() {
$(".hamburger").hide();
$(".cross").show();
});
});
$(".cross").click(function() {
$(".menu").slideToggle("slow", function() {
$(".cross").hide();
$(".hamburger").show();
});
});
});
我非常感谢关于如何添加关闭函数的建议。
谢谢
肖恩。使用聚焦输出
$'p'.focusoutfunction{
$'myDiv.hide;}您可以使用此函数
// when click on window
function actionwindowclick(elem , action){
$(window).on('click',function(e){
if (!$(elem).is(e.target) // if the target of the click isn't the container...
&& $(elem).has(e.target).length === 0) // ... nor a descendant of the container
{
action();
}
});
}
actionwindowclick('.cross , .hamburger', function(){
$(".hamburger").hide();
});
然后使用这个函数
// when click on window
function actionwindowclick(elem , action){
$(window).on('click',function(e){
if (!$(elem).is(e.target) // if the target of the click isn't the container...
&& $(elem).has(e.target).length === 0) // ... nor a descendant of the container
{
action();
}
});
}
actionwindowclick('.cross , .hamburger', function(){
$(".hamburger").hide();
});
样品
$document.readyfunction{
$.cross.clickfunction{
美元,"汉堡包"节目;;
};
//在这里运行函数
actionwindowclick'.cross、.hamburger',函数{
美元.汉堡包.皮;
};
};
//当点击窗口时
功能操作窗口单击元素、操作{
$window.单击,函数E{
if!$elem.ise.target//如果单击的目标不是容器。。。
&&$elem.hase.target.length==0/…或容器的后代
{
行动
}
};
}
.汉堡包{
显示:无;
}
交叉分区
汉堡部
$:not.cross.clickfunction{$.menu.hide;};你能向作者解释一下这是怎么回事吗?代码转储是一种糟糕的做法