Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.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 在手风琴中重置项目高度是';t正确复位_Javascript_Jquery_Accordion_Jquery Ui Accordion - Fatal编程技术网

Javascript 在手风琴中重置项目高度是';t正确复位

Javascript 在手风琴中重置项目高度是';t正确复位,javascript,jquery,accordion,jquery-ui-accordion,Javascript,Jquery,Accordion,Jquery Ui Accordion,编辑: 这个问题解决了。原来它与css中的行高度有关,而与js无关 小提琴: 现场直播: 它似乎不是在小提琴上做这件事,而是在现场做这件事。 当我点击手风琴菜单项时,它会正确打开。当我第二次点击同一个项目时,它应该关闭并返回到以前的样子。然而,情况并非如此。当我第二次点击它时,它关闭了,但在手风琴菜单链接之间留下了额外的空间 我不太了解js,但我认为它可能与这一点有关: $(window).bind('smartresize.accordion', function( event ) {

编辑: 这个问题解决了。原来它与
css
中的行高度有关,而与
js
无关

小提琴:

现场直播:

它似乎不是在小提琴上做这件事,而是在现场做这件事。 当我点击手风琴菜单项时,它会正确打开。当我第二次点击同一个项目时,它应该关闭并返回到以前的样子。然而,情况并非如此。当我第二次点击它时,它关闭了,但在手风琴菜单链接之间留下了额外的空间

我不太了解
js
,但我认为它可能与这一点有关:

$(window).bind('smartresize.accordion', function( event ) {

            // reset orinal item values
            instance._saveDimValues();

            // reset the content's height of any item that is currently opened
            instance.$el.find('li.st-open').each( function() {

                var $this   = $(this);
                $this.css( 'height', $this.data( 'originalHeight' ) + $this.find('div.st-content').outerHeight( true ) );


            });

            // scroll to current
            if( instance._isOpened() )
            instance._scroll();

        });

如果您需要解释有关
js
的任何内容,请尽可能用简单的术语解释。我对此知之甚少。

这肯定是一个非常奇怪的问题。发生的情况是,第二个列表项上的h2长度刚好足以导致换行,出于某种原因,只有在手风琴关闭后才会计算/显示换行符。你可以通过把里面的文字缩短为几个字母来看到这一点。它下面的li也会发生这种情况,但你无法判断,因为它是最后一项

要解决此问题,只需将其添加到样式表中的h2{}

white-space:nowrap;

应该可以了。

我看不出Chrome中的实时站点存在问题,请尝试将所有填充和边距设置为0px-查看是否有帮助您使用的浏览器是什么?如果它在jsfiddle中运行良好,但在实时站点上运行不正常,那么它可能与站点上的其他代码(可能是css)存在某种冲突。在Chrome和firefox中对我来说效果很好。让我知道你使用的是什么浏览器,我会给它一个测试。我正在firefox中查看它,但我刚刚在Chrome中查看了live站点,我仍然看到了这个问题。在第二和第三个链接之间尤其明显。firefox/chrome的哪个版本?你能在合上手风琴后抓拍一下它的屏幕吗?Firefox13和我想无论最新版本的Chrome是什么。之前:之后:这改善了它,但它仍然存在。:-)我似乎再也看不到你的现场直播了。我测量了第三个李的基线,它看起来在之前和之后都排好了。什么地方仍然给你带来问题?谢谢你的关注。几分钟前,当我解决了另一个问题时,我神奇地解决了那个问题。和线的高度有关。