工作jsFiddle
示例:http: //jsfiddle.net/A5Hk5/2/
您要做的就是在窗口调整大小事件上检查屏幕宽度,如果宽度低于某个值(如果在我的示例中为 640 像素),则将其显示设置为无,否则它是块状或可见的。
此解决方案使用 em 到 px 转换,方法可以在下面找到。取自HERE的转换函数。
$(document).on('pagebeforeshow', '[data-role="page"]', function(){
$(window).resize();
});
$(window).resize(function() {
$(".ui-btn").css({display: window.innerWidth >= $(33).toPx() ? "block" : "none"});
});
$.fn.toEm = function(settings){
settings = jQuery.extend({
scope: 'body'
}, settings);
var that = parseInt(this[0],10),
scopeTest = jQuery('<div style="display: none; font-size: 1em; margin: 0; padding:0; height: auto; line-height: 1; border:0;"> </div>').appendTo(settings.scope),
scopeVal = scopeTest.height();
scopeTest.remove();
return (that / scopeVal).toFixed(8);
};
$.fn.toPx = function(settings){
settings = jQuery.extend({
scope: 'body'
}, settings);
var that = parseFloat(this[0]),
scopeTest = jQuery('<div style="display: none; font-size: 1em; margin: 0; padding:0; height: auto; line-height: 1; border:0;"> </div>').appendTo(settings.scope),
scopeVal = scopeTest.height();
scopeTest.remove();
return Math.round(that * scopeVal);
};