Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.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 jQuery UI-手风琴显示问题_Javascript_Css_Jquery Ui - Fatal编程技术网

Javascript jQuery UI-手风琴显示问题

Javascript jQuery UI-手风琴显示问题,javascript,css,jquery-ui,Javascript,Css,Jquery Ui,我的手风琴工作正常,但我有一个JS问题,禁止它正确显示 JS没有应用。ui在其下方的“kwick”div完成折叠后,将所有的角都应用到H3,在动画之后给出一个奇怪的截止边界 有什么建议吗 谢谢 // find elements to show and hide var toShow = clicked.next(), toHide = this.active.next(), data = { options: o,

我的手风琴工作正常,但我有一个JS问题,禁止它正确显示

  • JS没有应用。ui在其下方的“kwick”div完成折叠后,将所有的角都应用到H3,在动画之后给出一个奇怪的截止边界
  • 有什么建议吗

    谢谢

            // find elements to show and hide
        var toShow = clicked.next(),
            toHide = this.active.next(),
            data = {
                options: o,
                newHeader: clickedIsActive && o.collapsible ? $([]) : clicked,
                oldHeader: this.active,
                newContent: clickedIsActive && o.collapsible ? $([]) : toShow,
                oldContent: toHide
            },
            down = this.headers.index( this.active[0] ) > this.headers.index( clicked[0] );
    
        this.active = clickedIsActive ? $([]) : clicked;
        this._toggle(toShow, toHide, data, clickedIsActive, down);
    
        // switch classes
        this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all")
            .find(".ui-icon").removeClass(o.icons.headerSelected).addClass(o.icons.header);
        if (!clickedIsActive) {
            clicked.removeClass("ui-state-default ui-corner-all").addClass("ui-state-active ui-corner-top")
                .find(".ui-icon").removeClass(o.icons.header).addClass(o.icons.headerSelected);
            clicked.next().addClass('ui-accordion-content-active');
        }
    
        return;
    
    更新: 您可以修改源代码,但这通常不是一个好主意

    因为它期望特定的格式,所以您可能需要对CSS做一些棘手的事情来避免这种闪烁

    • 在h3的所有角落都有完整的20px边界半径,即使在元素展开时也是如此
    • 让内容使用以下样式:
      填充顶部:20px;位置:相对位置;顶部:-20px或类似的东西,将垫20px,然后通过向上拉来纠正位置。这样,当它展开时,它实际上与
      h3
      底角重叠。如果这不起作用
      填充顶部:20px;利润上限:-20px可能

    在我看来,这是可行的。我想在你的jfiddle帖子上试试,但你还没有把css源代码放到css框架中。

    是的,我实际上试图将h3和div包装在一起,但它似乎破坏了javascript。。。我没想过把div放在h3里面,我想这可能会起作用,虽然不合法。。。。我知道这与编辑添加到上面的javascript代码有关。你可以使用另一个div而不是h3来避免冲突。是的,就像我说的,我尝试了一下,但它破坏了javascript。我认为它需要一个特定的结构才能正常运行。我已经用我的发现更新了我的问题和代码,你说得对,对不起。我有另一个可能有效的解决方案,我会编辑我的答案。@Dave-我只是提醒一下,我编辑了答案,以防你没有注意到。