可以通过Javascript在Mobile Safari中更改页面缩放

Is is possible to change page zoom in Mobile Safari via Javascript?

本文关键字:缩放 Javascript Mobile Safari 可以通过      更新时间:2023-09-26

我有一个网站使用jquerymobile。它加载一个初始网页,然后当其他页面被点击时,它们被加载在一个"覆盖"中,该覆盖会滑动到顶部。

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

. .除了我的有缩放功能。

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

这可能吗?

实际上,我只是必须自己解决这个特定的问题,所以我希望这个答案能帮助别人。我遇到的具体情况是,我有一个网站(更像是一个web应用程序),它不是在响应式设计中构建的,但仍然打算对移动设备友好。其中一个界面特性是包含一个包含表单的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属性更改为网站框架的宽度。但这样就可以了。

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

来关闭掐位。