flexnav菜单闪烁问题

时间:2014-09-15 21:28:50

标签: jquery css3

我正在使用Jason Weaver的优秀flexnav菜单。我对原始代码所做的更改是将其设置为标题中的粘性菜单。该菜单在平板电脑和手机设备上运行良好。它在宽度超过800px的桌面上,下拉菜单闪烁,不会从他们想要的ul或li项目中掉落。我首先设置的prototype工作正常,但此代码没有固定菜单的规定。 production页面已修复菜单,这就是我遇到问题的地方。

以下是两页之间的差异:

原型代码:

.flexnav {
  -webkit-transition: none;
  -moz-transition: none;
  -ms-transition: none;
  transition: none;
  -webkit-transform-style: preserve-3d;
  overflow: hidden;
  margin: 0 auto;
  width: 100%;
  max-height: 0;
}

生产代码的差异:

position: fixed;

原型代码:

.flexnav.flexnav-show {
  max-height: 2000px;
  opacity: 1;
  -webkit-transition: all .5s ease-in-out;
  -moz-transition: all .5s ease-in-out;
  -ms-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
}

生产代码的差异:

margin-top: 55px;
z-index: 5;

原型代码:

.menu-button {
  position: relative;
  display: block;
  padding: 1em;
  background: #ff8400;
  color: #222222;
  cursor: pointer;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

生产代码的差异:

position: fixed;
width: 100%;
top: 0;
left: 0;
z-index: 99;

仅为生产代码添加了媒体查询:

@media all and (min-device-width: 481px) {

  .flexnav-show {
    margin-top: 0px !important; } }

由于 -Sohail

1 个答案:

答案 0 :(得分:0)

来自here

以下列方式使用flexnav插件和hoverIntent插件:

$(".flexnav").flexNav({

         'animationSpeed' : 'fast',
         'calcItemWidths': true , // dynamically calcs top level nav item widths
         'hoverIntent': true, // true for use with hoverIntent plugin
         'hoverIntentTimeout': 150 // hoverIntent default timeout     

    });

你必须下载hoverIntent插件才能使用它,因为它不包含在flexnav插件中。