0

jqm 1.1.1 和科尔多瓦 2.0.0

我在页脚中捕获点击,并在点击时切换显示()/隐藏()导航栏。

到目前为止,我正在捕获水龙头,导航栏正在显示/隐藏,但是当它显示时,它会将页面延长导航栏的高度。这种长度并不明显,但它使页面即使在导航栏被隐藏后也可以滚动。(它只将导航栏高度添加到页面底部一次。)

仅供参考,“点击切换”不是一个选项,因为它需要在屏幕的 ui 内容部分点击,并且还有其他可点击项,这就是我必须在页脚中捕获点击的原因。

我怎么能不把那个长度添加到页面底部,这样导航栏更像是一个覆盖而不是一个扩展,或者我怎样才能在 hide() 上删除那个额外的高度;

页脚代码如下所示:

<div data-role="footer" data-position="fixed" data-theme="b">
  <div id="menu" data-role="navbar" data-iconpos="top">
    <ul>
      <li><a href="#" data-icon="gear">Settings</a></li>
      <li><a href="#" data-icon="delete">Delete</a></li>
    </ul>
  </div>
  <h6>App Footer Text</h6>
</div><!-- /footer -->  

显示/隐藏 javascript 是这样的:

if(stateMenu == false)
{
  $('#menu').addClass('fixed');
  $("#menu").show();
  stateMenu = true; 
}
else
{
  $('#menu').removeClass('fixed'); 
  $('#menu').hide();  
  stateMenu = false;
}   

谢谢大家...

4

1 回答 1

0

将此添加到显示块:

$('#menu').css('display', 'normal');

将此添加到隐藏块:

$('#menu').css('display', 'none');

这会从 dom 中删除 div,因此现在菜单显示/隐藏并且看起来应该...您可以将其绑定到任何事件,包括菜单按钮(我已将其绑定到菜单按钮和页脚内的点击)

于 2012-10-01T21:06:00.583 回答