4

我将 JQTouch 用于 iPhone 应用程序。JQtouch 默认禁用缩放页面的可能性。对于一页(包含大图像),我需要启用捏合和缩放功能。这很简单 :

var viewport = $("head meta[name=viewport]");
viewport.attr('content', 'width=320, initial-scale=1, maximum-scale=10.0, minimum-scale=1, user-scalable=1');

但是在用户玩过捏和缩放之后,我需要将缩放(缩放)动态重置为默认值。我试图重置视口:

viewport.attr('content', 'width=320, initial-scale=1.0, maximum-scale=1.0, user-scalable=0;');

调用上述代码后,无法再进行缩放(因为 user-scalable=0;),但不会将当前缩放比例更改为默认值。

我正在寻找像 setScale(1) 这样的东西,或者改变像 current-scale=1 这样的属性

任何的想法 ?

4

1 回答 1

3

重置用户缩放的唯一方法是重新加载页面:

window.location.reload();

如果您不想这样做,则需要添加一个脚本来动态缩放元素,例如带有触摸事件的图像。这是一个带有滚动的捏和缩放示例:

http://tlrobinson.net/projects/iphone-light-table/

将此代码集成到您的项目中很容易。只需打开 HTML 源代码,复制 Javascript,然后根据您的需要更改 init() 函数。

于 2010-05-28T10:55:41.573 回答