Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript clientWidth检测关闭了15px,可能是由于滚动条_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript clientWidth检测关闭了15px,可能是由于滚动条

Javascript clientWidth检测关闭了15px,可能是由于滚动条,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有一个导航栏,在某个断点后会变成一个带有滑动切换功能的按钮,我有一个jquery来处理它。在该移动布局中,它还使切换的导航幻灯片在单击某个项目后返回 jQuery(document).ready(function($){ /* prepend menu icon */ $('#nav-wrap').prepend('<div id="menu-icon">Menu</div>'); /* toggle nav */

我有一个导航栏,在某个断点后会变成一个带有滑动切换功能的按钮,我有一个jquery来处理它。在该移动布局中,它还使切换的导航幻灯片在单击某个项目后返回

jQuery(document).ready(function($){

        /* prepend menu icon */
        $('#nav-wrap').prepend('<div id="menu-icon">Menu</div>');

        /* toggle nav */
        $("#menu-icon").on("click", function(){
            $(".nav").slideToggle("slow");
            $(this).toggleClass("active");
        });

        if (document.documentElement.clientWidth < 860) {
                $(".navitem").on("click", function(){
                $(".nav").slideToggle("slow");
                $(this).toggleClass("active");
            });             
        } });
jQuery(文档).ready(函数($){
/*前置菜单图标*/
$(“#导航包裹”)。前置(“菜单”);
/*切换导航*/
$(“#菜单图标”)。在(“单击”,函数()上){
$(“.nav”)。滑动切换(“慢速”);
$(此).toggleClass(“活动”);
});
if(document.documentElement.clientWidth<860){
$(“.navitem”)。在(“单击”,函数(){
$(“.nav”)。滑动切换(“慢速”);
$(此).toggleClass(“活动”);
});             
} });
问题是,我的
.nav
在一直被单击到876的宽度后隐藏。我怀疑这是由于滚动条,但我不知道如何修复它。该站点只有一个页面布局,所以导航栏保持在那里是很重要的。 有什么想法吗


试试这个:尽管它不会复制问题。chrome(以及我假设的所有webkit浏览器)中出现的情况是,
.nav
在宽度为861-876的情况下单击其中一个项目后消失。

我只是想尝试一下你的问题,盲目地掷镖,但是:

你的问题(据我所知)是你的导航项目在某一点消失。我假设当你把窗口缩小到移动按钮菜单,点击它隐藏菜单,然后调整窗口大小时,导航项消失了

一个简单的解决方法是强制导航菜单设置为
display:block!重要的当浏览器大小大于手机时:

jQuery(文档).ready(函数($){
/*前置菜单图标*/
$('#nav wrap')。前置('

  • 没有。如果你给了我更多的工作,比如在JSFIDLE中复制这个,那么我会有一些想法在我脑海中激荡,但你没有……很遗憾,我没有任何东西可以给你。添加JSFIDLE是为了一点上下文,但我无法复制这个问题。由于滚动条的原因,JS和css媒体查询的宽度不同。哟你需要通过检查一个元素来同步两者。例如,在css中设置一个div为display none,比如说,如果小提琴没有复制问题,那么问题就在其他地方,小提琴是不相关的。我觉得完全愚蠢,没有考虑为媒体查询设置一个display属性。它成功了,谢谢!