2016-03-04 33 views
3

目前我正在一個包裝谷歌地圖的打包的Chrome應用程序。但我無法使用捏放大。在網頁上「正常」縮放也不起作用。啓用捏放大Chrome應用程序

我使用的所有頁面(和地圖)都是可縮放的,如果我直接在谷歌瀏覽器中打開它們,但我似乎沒有在包應用程序中使用它。有任何想法嗎?可能這是一個權限或WindowOptions問題?

在Mac上工作10.11.3。 Chrome版本48.0.2564.116

簡單的例子(Dropbox的鏈接):zoomtest

的manifest.json

{ 
    "name": "Zoom test", 
    "version": "0.1", 
    "manifest_version": 2, 
    "app": { 
     "background": { 
      "scripts": ["background.js"] 
     } 
    } 
} 

background.js

chrome.app.runtime.onLaunched.addListener(function() { 
    chrome.app.window.create('index.html', { 
     innerBounds: { width: 800, height: 600 }, 
     state: 'normal' 
    }); 
}); 

的index.html

<html> 
<head> 
<style> 
p { 
    width: 400px; 
} 
</style> 
</head> 
<body> 
<p>This page is zoomable in Google Chrome if opened directly, 
but not if run as an app.</p> 

</body> 
</html> 
+0

向我們展示你如何嵌入地圖。 – Xan

+0

我也有非地圖頁面。當在Chrome中直接打開它們時,我可以用捏放大縮小HTML頁面。但在Chrome應用程序中,我不能。有我缺少的設置嗎? – sy1vain

+0

也許吧。儘管如此,展示一個最小的例子 – Xan

回答

1

我設法通過使用下面的函數來解決這個問題:

function mapTouchFix(){ 
    if("ontouchstart" in window || window.DocumentTouch && document instanceof DocumentTouch){ 
    navigator = navigator || {}; 
    if(navigator.platform!='MacIntel'){ 
     navigator.msMaxTouchPoints = navigator.msMaxTouchPoints || 2; 
    } 
    } 
} 

顯然,這個欺騙瀏覽器/谷歌地圖,使捏手勢