有没有一种方法可以定义JQM用于selectmenu覆盖的偏移量?
可以通过原型设置其他选项,如下所示:
$.mobile.page.prototype.options.addBackBtn = true;
$.mobile.page.prototype.options.backBtnTheme = "a";
问题描述
jQuery Mobile确定屏幕的大小,并决定如何显示选择菜单的覆盖图。不幸的是,这似乎仅在不使用固定的标题工具栏的情况下有效,因为JQM始终使用30px
style="left: 741.65px; top: 30px;
的最高偏移量来生成源代码。没有方法只能用CSS覆盖它,因为css规则的特异性总是低于样式属性的特异性!
我不想更改JQM源代码,因为在每个发行版中都必须再次更改它。而且我不使用未压缩的源。
从JQM生成的源
<div class="ui-selectmenu ui-overlay-shadow ui-corner-all ui-body-a pop in"
style="left: 741.65px; top: 30px;">
样品
http://jsfiddle.net/V8AAB/
JQM源代码
这是jQuery Mobile 1.0RC2中的相应代码:
self.menuType = "overlay";
self.screen.height( $(document).height() ).removeClass( "ui-screen-hidden" );
// Try and center the overlay over the button
var roomtop = btnOffset - scrollTop,
roombot = scrollTop + screenHeight - btnOffset,
halfheight = menuHeight / 2,
maxwidth = parseFloat( self.list.parent().css( "max-width" ) ),
newtop, newleft;
if ( roomtop > menuHeight / 2 && roombot > menuHeight / 2 ) {
newtop = btnOffset + ( self.button.outerHeight() / 2 ) - halfheight;
} else {
// 30px tolerance off the edges
newtop = roomtop > roombot ? scrollTop + screenHeight - menuHeight - 30 : scrollTop + 30;
}
最佳答案
建议的修复方法:
.ui-selectmenu { z-index: 1100 !important; }
关于css - 如何在jQuery Mobile中(使用固定的标题工具栏)在(选择菜单)覆盖上设置偏移量?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7848392/