jquerymobile一个页面具有不同的元视口设置

时间:2011-12-06 01:40:55

标签: jquery-mobile

我已尝试在jQM viewport等上调整我的元beforepageshow标记,但它根本不起作用,我猜这很明显。我有一个页面上有一个highcharts图表,我需要在我的viewport标记中没有任何内容,通常有width=device-width, initial-scale=1,user-scalable=no, minimum-scale=1.0, maximum-scale=1.0

这是因为我希望应用程序在粗略图表进入时缩小,有没有人对如何使用不同viewport设置的页面有任何好主意?我可以在没有AJAX的情况下链接到它,然后有条件地输出正确的元标记,但我宁愿不这样做。

1 个答案:

答案 0 :(得分:4)

当我想要为图片或其他需要用户查看小文本的内容启用缩放时,我动态更改了我的几个移动网站上的元viewport标记:

var $viewport        = $('meta[name="viewport"]'),
    default_viewport = $viewport.attr('content');

$(document).delegate('#page-id-one, #page-id-two', 'pageshow', function () {

    //these are the pages that you want to enable zooming
    $viewport.attr('content', 'width=device-width,initial-scale=1.0,maximum-scale=5.0');

}).delegate('#page-id-one, #page-id-two', 'pagehide', function () {

    $viewport.attr('content', default_viewport);

});

此代码希望包含在jQuery和meta viewport标记之后。显然,您可以根据需要更改viewport元素的内容(我相信Safari会允许maximum-scale 10。)