Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.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插件-Firefox上的滚动动画错误-如何调试_Javascript_Jquery_Jquery Plugins - Fatal编程技术网

Javascript 水平手风琴-jQuery插件-Firefox上的滚动动画错误-如何调试

Javascript 水平手风琴-jQuery插件-Firefox上的滚动动画错误-如何调试,javascript,jquery,jquery-plugins,Javascript,Jquery,Jquery Plugins,jQuery有一个插件,允许您构建水平手风琴,它在除firefox之外的所有浏览器中都非常有效。我的主要问题是,我对调试客户端代码有点不熟悉,我主要是一名Java程序员,虽然我对客户端技术有很好的理解,但实际上试图调试这个问题让我不知所措,有人能看看这个错误吗,如果可能的话,确定根本原因,并分享他们是如何处理这个问题的 当我提到手风琴时,我指的是完整的部分,在这个例子中,两个手柄,以及显示的内容 以下是一些我已经知道的让你开始的事情: 在动画期间,手风琴的大小增加1或2个像素 当包含div的

jQuery有一个插件,允许您构建水平手风琴,它在除firefox之外的所有浏览器中都非常有效。我的主要问题是,我对调试客户端代码有点不熟悉,我主要是一名Java程序员,虽然我对客户端技术有很好的理解,但实际上试图调试这个问题让我不知所措,有人能看看这个错误吗,如果可能的话,确定根本原因,并分享他们是如何处理这个问题的

当我提到手风琴时,我指的是完整的部分,在这个例子中,两个手柄,以及显示的内容

以下是一些我已经知道的让你开始的事情:

  • 在动画期间,手风琴的大小增加1或2个像素
  • 当包含div的大小设置为手风琴的大小时,错误是显而易见的
  • 如果包含div的大小增加,则该大小仍会增加,从而产生最右边的“抖动效果”
  • 这个问题只出现在firefox上

尝试稍微调整CSS():


更新:在参考之后,我发现在句柄中添加一个负右边距修复了所有闪烁的问题():


我的第三个要点解决了这个问题,虽然我修改了包含div,而不是accordio,但问题仍然存在,因为您可以在更新的示例中看到右侧的“抖动”。所以,你像我在部署时一样解决了这个问题,但我更感兴趣的是调试它,并找出实际的问题所在。在FF3.6中,我一点也不担心,所以它看起来是一个非常好的解决方案。很好,更新的示例现在在firefox中运行,做得很好。我仍然对这个问题的根本原因很感兴趣,因为实际的解决方案似乎有些不直观。这个问题是由于内容的宽度与句柄共享它的宽度。当添加到一起时,它会稍微变宽,从而将内容推到下一行(浮动使它这样做)。如果您查看原始演示并将动画时间更改为10000左右,您将看到它“闪烁”,因为内容被推到下一行,然后备份,然后向下,等等。。。添加负边距可以使句柄和内容结合在一起,而不会导致内容被压下——或者是一个让你的生活变得悲惨的计算机妖精:P
#containingDiv {
    height : 200px;
    width : 460px;
    overflow: hidden;
}

#myAccordion {
    width: 2000px; /* should be wide enough to contain all panels - max width in opera is 32766 */
}
.handle {
    height : 200px;
    width : 30px;
    background : #aaaaaa;
    margin : 0 -1px 0 0;
    padding : 0px;
}