Javascript YUI菜单呈现在下面;“折叠”;首次公开赛
我有一个YUI菜单在屏幕的底部导航,它会在下面创建一个大的空白区域,如果可以看到的话,动作列表就会呈现出来 在第一次单击时,菜单将呈现在需要用户滚动查看的空白处。。。但是,在第二次单击时,它将向上绘制(理想情况下),以便用户不必滚动查看菜单。。。第二次点击也会杀死那块空白Javascript YUI菜单呈现在下面;“折叠”;首次公开赛,javascript,yui,yui-menu,Javascript,Yui,Yui Menu,我有一个YUI菜单在屏幕的底部导航,它会在下面创建一个大的空白区域,如果可以看到的话,动作列表就会呈现出来 在第一次单击时,菜单将呈现在需要用户滚动查看的空白处。。。但是,在第二次单击时,它将向上绘制(理想情况下),以便用户不必滚动查看菜单。。。第二次点击也会杀死那块空白 我发现添加了一种显示样式:在div中添加none会消除空白。。。但是YUI没有将显示设置为阻塞,根据我的理解,应该。。。所以我写了另一个方法,可以手动完成。。。但同样的情况也会发生,菜单首先呈现在折叠下方,要求用户滚动。。。。
我发现添加了一种显示样式:在div中添加none会消除空白。。。但是YUI没有将显示设置为阻塞,根据我的理解,应该。。。所以我写了另一个方法,可以手动完成。。。但同样的情况也会发生,菜单首先呈现在折叠下方,要求用户滚动。。。。第二次它的作品很好。。。某些原因导致第一次单击时未正确计算顶部/左侧位置,我似乎无法理解为什么您尝试使用菜单配置选项的
constraintoviewport
属性(在以下位置搜索):
(继承自YAHOO.widget.Overlay。)布尔值,指示菜单是否将尝试保持在视口大小的边界内。仅当“位置”配置属性设置为“动态”并自动应用于所有子菜单时,才应用此属性
如果您使用的是
YUI.widget.Button
,我相信您可以获得对该对象的Overlay
属性的引用,并通过这种方式将constraintoviewport
设置为true
。好的,因此我只需向包含以下属性的菜单的div添加一个样式即可修复它
position: absolute;
left:0px;
top:0px;
这样,它将在屏幕的左上角绘制div,其中总是有内容,因此不会创建空白。创建的空白是YUI使用可见性:隐藏而不是显示:无