web-dev-qa-db-ja.com

Google chrome-ピンチズームを無効にします

私は駅の公共の場所と空港にキオスクを持っています。

ランダムな人は、Google Chromeで実行されているタッチスクリーンアプリケーションを使用する必要があります。ユーザーがGoogleでピンチ操作またはピンチ操作を適用すると、chrome then Google chromeが画面を異常に拡大し、画面を永久に拡大したままにしてから、電話を受けます私のアプリケーションが動作しないこと。

enter image description here

過去のGoogleでchrome://flags/#enable-pinchを使用すると、chromeでピンチを解消できましたが、新しいバージョンではこの機能を削除しました`` chrome:// flags /#enable-pinch`

chrome://flags/#touch-events-これを無効にすると、Google Chromeのタッチ入力全体が無効になります

<meta name="viewport" content="width=device-width, user-scalable=no">-これを適用しても、Google Chromeには影響しませんが、ピンチ/ピンチ解除攻撃が発生します

したがって、私はそれを解決するために他のすべての可能な方法を試み続けました

enter image description hereenter image description hereenter image description hereenter image description hereenter image description hereenter image description here

すべてのオプションが失敗しているので、すべての髪を抜いています。

誰でもそれを解決する方法をアドバイスできますか? Googleでピンチ/ピンチ解除を完全に無効にするにはどうすればよいですかchromeまたはオペレーティングシステム全体?)コントロールパネルも試しましたが、ピンチ/ピンチ攻撃を無効にするオプションが表示されているコントロールパネルはありません。

// Dear God, please give me a Pinch disable option for, Google chrome. Its a nightmare, nothing stops pinch zoom actions.
window.addEventListener("touchstart", touchHandler, false);
function touchHandler(event){
    if(event.touches.length > 1){
      console.log("pinch "); // detected
      window.location.reload();// detected
      try {
        event.preventDefault(); // FAIL FAIL FAIL FAILLLLLLLL ???????????
        return false;
      }catch(eee) {
      }
    }
    else {
      console.log("pinch not");//detected
    }
}
7
user285594

回答:2018

キオスクアプリケーションで同じ問題を解決しようとしています。メタタグとタッチイベントを試しましたが、アプリケーション側では何も機能しません。

最後に、私が見つけた解決策は、起動時にコマンドラインからピンチを無効にすることでしたChromeキオスクモードで

次に例を示します。

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --start-fullscreen  --kiosk 
--disable-pinch  http://127.0.0.1:1000
4
Adam Hughes

私はあなたのために少し遅れていると思いますが、グーグルを介してこれを見つけた次の人々のために、解決策は純粋なCSSを使用するだけで、実際にはかなり簡単です。

お探しの物件はtouch-actionおよびMDNで説明されているとおり:

Touch-action CSSプロパティは、ユーザーがタッチスクリーンを介して(たとえば、ブラウザーに組み込まれているパンまたはズーム機能によって)指定された領域を操作できるかどうか、およびその方法を指定します

ピンチズームをすべて無効にする基本的な解決策は、CSSに次のコードスニペットを配置することです。

body {
    touch-action: none;
}

他のオプションとしてpan-xpan-leftpan-rightpan-ypan-uppan-downpinch-zoom

完全なドキュメント@ https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action を確認してください

3
Rabbi Shuki Gur