Javascript 禁用移动设备的jQuery下拉列表

Javascript 禁用移动设备的jQuery下拉列表,javascript,jquery,html,css,mobile,Javascript,Jquery,Html,Css,Mobile,我的网站有我用CSS制作的导航下拉列表,但最近我把它改成了jQuery,所以它是动画的。当它是CSS的时候,我能够禁用手机上最小断点的下拉列表。但对于jQuery,我不知道如何做到这一点。这是我的下拉代码。当视口变得足够小时,如何使其禁用 $(document).ready(function() { $('.nav > li').mouseenter(function() { $(this).children('.nav-content').slideDown(20

我的网站有我用CSS制作的导航下拉列表,但最近我把它改成了jQuery,所以它是动画的。当它是CSS的时候,我能够禁用手机上最小断点的下拉列表。但对于jQuery,我不知道如何做到这一点。这是我的下拉代码。当视口变得足够小时,如何使其禁用

$(document).ready(function() {
    $('.nav > li').mouseenter(function() {
        $(this).children('.nav-content').slideDown(200);
    });

    $('.nav > li').mouseleave(function() {
        $(this).children('.nav-content').slideUp(200);
    });
});
这是目前的网站:


您可以使用$window.width和$window.height检查屏幕大小

大概是

$(document).ready(function() {
    if($(window).width() > 800){
        $('.nav > li').mouseenter(function() {
            $(this).children('.nav-content').slideDown(200);
        });

        $('.nav > li').mouseleave(function() {
            $(this).children('.nav-content').slideUp(200);
        });
    }
}); 

您可以使用$window.width和$window.height检查屏幕大小

大概是

$(document).ready(function() {
    if($(window).width() > 800){
        $('.nav > li').mouseenter(function() {
            $(this).children('.nav-content').slideDown(200);
        });

        $('.nav > li').mouseleave(function() {
            $(this).children('.nav-content').slideUp(200);
        });
    }
}); 

给出的答案会有用,但我建议为手机制作第二个导航,并使用媒体查询来制作正确的节目

真正简单的HTML:

<div class="desktop-nav">
    [nav code]
</div>
<div class="mobile-nav">
    [mobile nav code]
</div>
然后,只需将鼠标指针应用于.desktop nav即可解决jquery:

$(document).ready(function() {
    $('.desktop-nav > li').mouseenter(function() {
        $(this).children('.nav-content').slideDown(200);
    });

    $('.desktop-nav > li').mouseleave(function() {
        $(this).children('.nav-content').slideUp(200);
    });
});

给出的答案会有用,但我建议为手机制作第二个导航,并使用媒体查询来制作正确的节目

真正简单的HTML:

<div class="desktop-nav">
    [nav code]
</div>
<div class="mobile-nav">
    [mobile nav code]
</div>
然后,只需将鼠标指针应用于.desktop nav即可解决jquery:

$(document).ready(function() {
    $('.desktop-nav > li').mouseenter(function() {
        $(this).children('.nav-content').slideDown(200);
    });

    $('.desktop-nav > li').mouseleave(function() {
        $(this).children('.nav-content').slideUp(200);
    });
});

我不确定你是想在一个特定的尺寸上做这件事,还是想在手机上做这件事。例如,您可以使用modernizer检测设备上是否启用了触摸:

您还可以检查用户代理以匹配设备类型,并以这种方式应用代码:


然后,根据您的检测,如果它符合或不符合您的条件,您可以申请。

我不确定您是否希望以特定的尺寸进行此操作,或者是否希望将其用于移动设备。例如,您可以使用modernizer检测设备上是否启用了触摸:

您还可以检查用户代理以匹配设备类型,并以这种方式应用代码:


然后,根据您的检测,如果它与您的条件匹配或不匹配,您可以申请。

您是唯一知道我特别想要什么并给了我明确答案的人。非常感谢。这很有效。它不允许我在工作和非工作之间切换,除非我先重置页面。但它是有效的,这才是重要的。不管怎样,人们都不会把手机屏幕伸出来,谢谢。您可以将我的答案潜在地放入调整大小事件侦听器,然后您可以在工作和非工作之间切换,而无需重置。但这更复杂,你是对的,ppl不会延长他们的手机。但是对于测试来说,看到代码按预期工作是令人欣慰的。你是唯一一个知道我在寻找什么并给了我一个明确答案的人。非常感谢。这很有效。它不允许我在工作和非工作之间切换,除非我先重置页面。但它是有效的,这才是重要的。不管怎样,人们都不会把手机屏幕伸出来,谢谢。您可以将我的答案潜在地放入调整大小事件侦听器,然后您可以在工作和非工作之间切换,而无需重置。但这更复杂,你是对的,ppl不会延长他们的手机。但是对于测试来说,看到代码按预期工作是令人欣慰的。