Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.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
使用CSS关闭jQuery UI_Jquery_Html_Css_Jquery Ui_Jquery Ui Accordion - Fatal编程技术网

使用CSS关闭jQuery UI

使用CSS关闭jQuery UI,jquery,html,css,jquery-ui,jquery-ui-accordion,Jquery,Html,Css,Jquery Ui,Jquery Ui Accordion,有没有办法强制jQueryUI使用CSS关闭,直到页面加载完成?我们在一个内容管理系统上使用它,每个页面都需要花费一定的时间来加载。jQuery在页面加载完成之前不会被触发,但是在这一点上,所有的accordios都已经被展开了。一旦页面加载,它们就会关闭,但我觉得看到一大堆东西出现然后消失,用户会感到困惑 在.accordion({…})上有一个选项,可以自己调用: .accordion({ active: false, collapsible: true }); active:false选

有没有办法强制jQueryUI使用CSS关闭,直到页面加载完成?我们在一个内容管理系统上使用它,每个页面都需要花费一定的时间来加载。jQuery在页面加载完成之前不会被触发,但是在这一点上,所有的accordios都已经被展开了。一旦页面加载,它们就会关闭,但我觉得看到一大堆东西出现然后消失,用户会感到困惑

.accordion({…})
上有一个选项,可以自己调用:

.accordion({ active: false, collapsible: true });

active:false
选项使其在创建时关闭,而
collapsable:true
选项使其在打开后可以重新关闭。

这些选项显示了如何在关闭所有选项卡的情况下初始化手风琴。请参阅:这意味着初始化代码为:

$( ".selector" ).accordion({ active: false, collapsible: true });

按照jQuery Accordion的设置,您可以简单地将
放在h3标题下方的content div上。这将在页面加载时隐藏手风琴中的所有内容。

您可以将其设置为:

.accordion-body{
    display: none;
}
我猜手风琴会在某处调用$.show(或类似),所以您不必担心再次显示它。同样,这是一个猜测,如果我错了,你可以使用

$('.accordion-body').css('display', 'block');
$('#accordion').accordion();
但是,如果您在dom load上调用
.accordio()
,也可以尝试更早地使用.load启动它:

$('#accordion').load(function(){
    $(this).accordion();
});

您可以尝试以下方法:

在CSS中,将样式应用于用于调用手风琴的选择器:

.accordionSelector > div { display:none; }
然后在jQuery加载后,将
显示
更改回

$(".accordionSelector").accordion({...}).children("div").css("display","block");

我打了他一顿,提到了另一个问题,但被转换成了一个无关紧要的评论。但这难道不会一直等到页面加载完成后才触发,因为它仍然在
$(文档)中。ready()
?然后把它放在一个标准的
$(function(){})中你会没事的。@Rev,是的,我想你指的是FOUC或Flash的非样式内容。你可以按照许多指南来解决这个问题。一种简单(但不推荐)的方法是隐藏所有内容并在
$(document.ready()
上显示。