我已尝试在jQM viewport
等上调整我的元beforepageshow
标记,但它根本不起作用,我猜这很明显。我有一个页面上有一个highcharts图表,我需要在我的viewport标记中没有任何内容,通常有width=device-width, initial-scale=1,user-scalable=no, minimum-scale=1.0, maximum-scale=1.0
这是因为我希望应用程序在粗略图表进入时缩小,有没有人对如何使用不同viewport
设置的页面有任何好主意?我可以在没有AJAX的情况下链接到它,然后有条件地输出正确的元标记,但我宁愿不这样做。
答案 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
。)