5

我正在尝试使用 HTML 5 技术来创建在桌面上的 Chrome 浏览器中运行的应用程序。我的挑战之一是似乎没有办法做相当于:

<meta name="viewport" content="width=device-height, user-scalable=no, maximum-scale=1, minimum-scale=1" />

在桌面上。我发现了一个针对铬的问题,但它似乎被忽略了。

要了解这个问题,请在 Chrome 中访问 maps.google.com 或在 Mac 上访问 Safari,然后做一个捏缩放手势。浏览器并没有像用户期望的那样放大地图,而是造成了巨大的无法使用的混乱。

鉴于谷歌地图和 Chrome 是由同一家公司开发的,这感觉像是一个相当绝望的事业。但这似乎是整个“Web 应用程序”概念中的一个非常根本的缺陷。如果浏览器甚至不允许您控制一些基本的东西,比如让您的虚拟视口与您的窗口大小相同,那么创建原生体验是不可能的。

我错过了什么吗?

4

3 回答 3

2

我面临同样的问题。我最近发现了这个:

document.addEventListener('touchmove', function(event){
    if(event.touches.length >=2) {
        event.stopPropagation(); 
        event.preventDefault(); 
    }
});

但如果用户行动得非常快,它仍然有效。这在信息亭设置中真的很烦人,用户在事故中进行捏拉缩放并且不知道发生了什么,所以信息亭只是坏了。如果我找到解决方案,我会继续发布

于 2014-04-10T21:46:35.023 回答
1

当前没有禁止用户放大其 Web 视图的“标准”。视口的元标记正是……一个元标记。w3 将元数据定义为:

“元数据内容是设置其余内容的表示或行为的内容,或者设置文档与其他文档的关系,或者传达其他“带外”信息的内容。”

并定义一个元标记如下:

“元元素代表了各种元数据,这些元数据不能用标题、基础、链接、样式和脚本元素来表达。”

元标记本质上是非规范性的,标准并没有真正规定它可以做什么或不能做什么,因为它取决于浏览器(或 Web 平台)来规定它使用什么元信息并最终忽略。视口元标记是专门为移动平台创建的 webkit 元标记。

据我从研究中得知,webkit(或 Chrome)不存在这样的当前等效标签,阻止用户查看 -> 缩放、按 ctrl(或命令)+/- 或捏在笔记本电脑触控板上做手势并相应地缩放。

于 2013-03-12T00:29:36.460 回答
-8

很简单,使用小程序来防止缩放,java rulez。

于 2013-11-23T20:42:02.627 回答