是否可以通过Javascript更改Mobile Safari中的页面缩放?

时间:2011-04-06 23:30:52

标签: javascript mobile-safari zoom mobile-website jquery-mobile

我有一个使用jquerymobile的网站。它加载一个初始网页,然后在点击其他页面时,它们被加载到一个" overlay"从顶部滑过。

就像这样: http://jquerymobile.com/demos/1.0a4/

..除了我的捏缩放启用。

我希望缩放状态在用户看到的每个页面上独立。因此,如果用户在第一页上启动,则打开"叠加",放大,然后关闭"叠加" - 我希望第一页重置为原始缩放级别。

这可能吗?

2 个答案:

答案 0 :(得分:1)

实际上,我只是必须自己解决这个问题,所以我希望这个答案可以帮助别人。我特意遇到的情况是,我有一个网站(更像是一个网络应用程序),它不是在响应式设计中构建的,但仍然是为了适合移动设备。其中一个界面功能是包含一个包含表单的jQuery Dialog窗口。当用户在诸如Droid或iPhone的移动电话上填写该表格时,10次中有9次,用户将“捏缩放”以填写表格。您需要做的就是在某些事件上触发此功能,在我的情况下,单击提交按钮。

function changeZoomLevel() {
        var sViewport = '<meta name="viewport" content="width=960">';
        var jViewport = $('meta[name="viewport"]');
        if (jViewport.length > 0) {
            jViewport.replaceWith(sViewport);
        } else {
            $('head').append(sViewport);
        }
}

当然,您可以将width属性更改为您网站框架的宽度。但这将成功。

答案 1 :(得分:0)

没有办法控制浏览器缩放。您应该使用JavaScript在浏览器中缩放(或缩放)对象。最好通过将user-scalable设置为no

来关闭pinching