固定定位单击后重置自身

时间:2014-05-28 14:54:14

标签: javascript jquery html css

我有一个只在单击菜单按钮时激活的侧边栏。如果你不点击它,它是固定定位并在第一次滚动时正常工作。但是如果你点击它,按钮会重置它的位置并一直回到页面顶部。这在Chrome和Firefox上很明显,并且奇怪地在IE11中有效。任何帮助赞赏。提前谢谢。

这是小提琴:http://jsfiddle.net/NCyL4/

div.mobile-only {
visibility: visible;
position: fixed;
top: 0;
left: auto;
right: auto;
margin: 1em;
height: 2em;
z-index: 10;
vertical-align: middle;

}

2 个答案:

答案 0 :(得分:0)

固定定位菜单按钮的父元素中的

-webkit-transform: translate(0px);覆盖其子项的位置。所以你应该从父母那里删除它。我快速检查后发现了它。我不知道它是否是错误,但试着处理它。

答案 1 :(得分:0)

这是由transform: translate(0px);应用于父级#sb-site)引起的。

解决方法是设置transform: none 替换Slidebars插件中的一行(小提琴中的l:134):

if (u === "translate") {
    A.css("transform", E === "0px" ? "none" : "translate(" + E + ")")
} else {
    ...
}