Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/461.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 默认打开所有手风琴内容并禁用折叠超过设置的屏幕大小_Javascript_Jquery_Css_Menu_Accordion - Fatal编程技术网

Javascript 默认打开所有手风琴内容并禁用折叠超过设置的屏幕大小

Javascript 默认打开所有手风琴内容并禁用折叠超过设置的屏幕大小,javascript,jquery,css,menu,accordion,Javascript,Jquery,Css,Menu,Accordion,对于我的网站设计,我需要一个手风琴菜单,用于小于7英寸水平平板电脑的屏幕,以及一个普通的水平菜单,用于上面的所有内容,内容就像一个单页网站(因此所有的手风琴部分都设置为打开) 我没有使用jqueryaccordion或任何其他预先制作的版本,因为我自己的设计中有一些视觉方面不支持 我正在使用的JS和CSS toggle 2 classes.accordion部分(默认)和.expand,当单击与class.button的文本链接时激活 $(document).ready(function() {

对于我的网站设计,我需要一个手风琴菜单,用于小于7英寸水平平板电脑的屏幕,以及一个普通的水平菜单,用于上面的所有内容,内容就像一个单页网站(因此所有的手风琴部分都设置为打开)

我没有使用jqueryaccordion或任何其他预先制作的版本,因为我自己的设计中有一些视觉方面不支持

我正在使用的JS和CSS toggle 2 classes.accordion部分(默认)和.expand,当单击与class.button的文本链接时激活

$(document).ready(function() {

var accordionPanels = $('.accordion-section');

$( ".button" ).on("click", function() {

    $(this).next(".accordion-section").toggleClass("expand");

    });
}); 
.expand类如下所示。我正在扩展一个div的高度,而不是实际显示一个隐藏的部分,因为我有一个背景图像,需要在部分关闭时可见,但在打开时保持可见并对齐

div.accordion-section.expand {
height: auto
}
我基本上希望在屏幕超过特定大小时将该类应用于所有部分,并确保单击.button链接不会将部分还原为.accordion内容

我希望这比我自己做的要简单。我可能可以用媒体查询来做,但我认为JS仍然会干扰,它看起来很笨重,没有必要


注意:我还没有水平菜单,但这不是问题,我现在只需要正确显示页面。

这样做不是很容易吗

.accordion-section {
  height: auto;
}

@media only screen and (max-width: 640px){
  .accordion-section {
    height: 0;
  }
  .accordion-section.expand {
    height: auto;
  }
}

这样,您的
扩展类只在小屏幕上有效。即使在大屏幕上添加/删除它,它也不会做任何事情。

这样做难道不容易吗

.accordion-section {
  height: auto;
}

@media only screen and (max-width: 640px){
  .accordion-section {
    height: 0;
  }
  .accordion-section.expand {
    height: auto;
  }
}

这样,您的
扩展类只在小屏幕上有效。即使在大屏幕上添加/删除它,它也不会做任何事情。

这样做难道不容易吗

.accordion-section {
  height: auto;
}

@media only screen and (max-width: 640px){
  .accordion-section {
    height: 0;
  }
  .accordion-section.expand {
    height: auto;
  }
}

这样,您的
扩展类只在小屏幕上有效。即使在大屏幕上添加/删除它,它也不会做任何事情。

这样做难道不容易吗

.accordion-section {
  height: auto;
}

@media only screen and (max-width: 640px){
  .accordion-section {
    height: 0;
  }
  .accordion-section.expand {
    height: auto;
  }
}

这样,你的
扩展
类只在小屏幕上有效。即使它在大屏幕上被添加/删除,它也不会起任何作用。

我不能将上面的答案标记为正确答案,因为它不起作用;@christian314159非常感谢你让我走上正确的道路,我严重地过度思考了整个问题苏

我只需要这一小部分:

@media only screen and (min-width: 640px){

    div.accordion-section {
      height: auto;
    }
}

我无法将上面的答案标记为正确答案,因为它不起作用;@christian314159非常感谢你让我走上正确的轨道,我严重地过度思考了整个问题

我只需要这一小部分:

@media only screen and (min-width: 640px){

    div.accordion-section {
      height: auto;
    }
}

我无法将上面的答案标记为正确答案,因为它不起作用;@christian314159非常感谢你让我走上正确的轨道,我严重地过度思考了整个问题

我只需要这一小部分:

@media only screen and (min-width: 640px){

    div.accordion-section {
      height: auto;
    }
}

我无法将上面的答案标记为正确答案,因为它不起作用;@christian314159非常感谢你让我走上正确的轨道,我严重地过度思考了整个问题

我只需要这一小部分:

@media only screen and (min-width: 640px){

    div.accordion-section {
      height: auto;
    }
}

这适用于桌面版本,JS不会像你建议的那样干扰,所以这太棒了,但它不适用于移动设备,因为在较小的屏幕上,这些部分需要“关闭”到如此高:0em;并且它们也被卡在打开的位置上。不过,我可能可以处理这个问题,我一直在关注JQuery和各种问题如果我想弄明白一些事情,我可能不需要这样做,如果我能调整得恰到好处的话,谢谢这对桌面版本有效,而且JS不会像你建议的那样干扰,所以这太棒了,但它对移动设备不起作用,因为在较小的屏幕上,分区需要“关闭”,所以高度为:0em;并且它们被卡在打开的位置这里也是。不过我可能可以处理这个问题,我一直在为JQuery和各种各样的东西操心,想弄明白一些事情,如果我能把它调整得恰到好处的话,我可能不需要这些,谢谢这对桌面版本有效,JS不会像你建议的那样干扰,所以这太棒了,它对移动设备不起作用因为在较小的屏幕上,部分需要“关闭”,所以高度为:0em;,并且它们也被卡在打开的位置上。不过,我可能可以处理这个问题,我一直在为JQuery和各种各样的东西操心,试图找出一些东西,如果我能正确地调整它,我可能不需要它,谢谢它适用于桌面版本,而JS不是int正如你所建议的那样,erfering可能会发生,所以这太棒了,但它不适用于移动设备,因为在较小的屏幕上,这些部分需要“关闭”到如此高:0em;并且它们也卡在打开的位置上。不过,我可能可以处理这个问题,我一直在为JQuery和各种各样的东西操心,试图找出一些东西,我可能不需要如果我能把它调整得恰到好处,thanksI应该注意到我使用的是移动优先的方法,因此工作手风琴出现在最初的HTML和CSS中,它需要从这个改变,而不是这个我应该注意到我使用的是移动优先的方法,所以工作手风琴出现在最初的HTML和CSS中,需要改变这个,不是这个我应该注意我使用的是移动优先的方法,所以工作手风琴出现在最初的HTML和CSS中,需要从这个改变,而不是到这个我应该注意我使用的是移动优先的方法,所以工作手风琴出现在最初的HTML和CSS中,需要从这个改变,而不是到这个