我的JS手风琴表现得很傻 - 它遍布整个地方

时间:2012-07-09 14:16:50

标签: css accordion jquery-ui-accordion

我正在尝试实现我发现的js手风琴,我遇到了问题。标题应该干净地滑动到页面顶部并删除下面的内容。这不是正在发生的事情。当你看到它时会有一些明显的跳跃。这根本不顺利。我对js了解不多,所以请仔细解释你的答案。非常感谢!

http://imip.rvadv.com/accordion.html

修改 将js替换为我从中获取的默认文件后,没有任何改变。这是一个jsfiddle

http://jsfiddle.net/imakeitpretty/ruwjn/

2 个答案:

答案 0 :(得分:2)

请检查:http://jsfiddle.net/luissanchezm86/ruwjn/4/

问题不在于.js,你不必在jsfiddle上全部写,因为它是JQuery UI,你可以简单地检查它包含它,如果它是另一个外部.js,用它作为一个资源,请检查fiddle's documentation

除此之外,另一个问题是你的 CSS 标记,你在那个小提琴中有很多重复的类,这有点乱。

跳跃的主要问题是:

.st-accordion ul li.st-open > a{
    margin-top: 70px;
}

我刚评论margin-top: 70px;,它解决了75%的问题,我建议你使用我在jsfiddle上安排的css。

希望它对你有所帮助!

<小时/> 的更新

现在,如果你想像http://jsfiddle.net/luissanchezm86/ruwjn/5/一样向上滚动,你需要让身体更高一些:

body {
    height: 2000px; 
}

答案 1 :(得分:1)

查看代码后,您似乎正在使用此插件:

http://tympanus.net/codrops/2011/10/12/flexible-slide-to-top-accordion/

如果你去那个页面,它有控制动画速度所需的javascript选项,以及比你更平滑的工作示例。