最近、shake.jsを使用して、shakeに似た機能を作成しました。ただし、shake機能はios13.3より前のバージョンでトリガーできるため、それ以降のバージョンでは互換性が必要です。ユーザーが手動でクリックして、アクションや指示の権限を承認できるように、ポップアップボックスを作成する必要があります。 (https プロトコルが必要です) <van-popup v-model="isTip" class="popInfo" :close-on-click-overlay="false"> <div class="mainBody"> <h3 class="systemTip">ヒント</h3> <div class="確認"> iOS システムはアクションと指示にアクセスするための許可を手動で取得する必要があるため、ゲームが正常に進行するように、アクセスプロンプトで [許可] をクリックしてください。 </div> </div> <button class="bottomButton" @click="handleInit"> 了解しました</button> </バン-ポップアップ> シェイク //shake.jsを導入する 作成された(){ this.initShake() 定数isAction = JSON.parse(localStorage.getItem('getAction')) var ua = navigator.userAgent.toLowerCase(); if (ua.indexOf("Mac OS X のような") > 0) { var reg = /os [\d._]*/gi; var verinfo = ua.match(reg); var version = (verinfo+"").replace(/[^0-9|_.]/ig,"").replace(/_/ig,"."); if (parseFloat(バージョン) >= 13.3 && !isAction){ localStorage.setItem("getAction",true) this.isTip = true } } }, 方法:{ initShake(){ this.myShakeEvent = 新しいシェイク({ しきい値: 15、// シェイクしきい値タイムアウト: 1000 // イベント頻度、オプションの値}); this.myShakeEvent.start(); window.addEventListener('shake', xx); }, ハンドル初期化(){ this.isTip = false this.ios13granted() }, ios13granted() { if (typeof DeviceMotionEvent.requestPermission === 'function') { DeviceMotionEvent.requestPermission().then(permissionState => { 権限状態が「許可」の場合{ this.initShake() //Shake} else if(permissionState === 'denied'){// 開いたリンクは https で始まっていません alert("現在の IOS システムでは、アクションと指示へのアクセスが拒否されています。WeChat を終了し、イベント ページに再度アクセスして権限を取得してください。または、抽選バケットを直接クリックしてイベントに参加してください") } }).catch((エラー) => { アラート("デバイスの向きやモーションへのアクセスを要求するには、ユーザーのジェスチャーが必要です") }) } それ以外 { // 通常の iOS 13 以降以外のデバイスを処理する alert("通常の iOS 13 以降以外のデバイスを処理する") } }, } 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: Windows (x86、64 ビット) で MySQL 5.7.17 無料インストール バージョンをアップグレードするための詳細なチュートリアル
>>: MAC 上の MySQL の初期パスワードを忘れた場合の対処方法
最近、Apple.com/Ebay.com/Amazon.com/shopping.yahoo.co...
目次回避策Vue2.0 で 2 つの配列の変更を監視できないのはなぜですか?ソースコード分析ヴュー3...
免責事項:プロジェクトでは ROS 環境を使用する必要があるため、これは Ubuntu 20.04 ...
目次1. jsonp クロスドメイン2. document.domain + iframe クロスド...
Docker が今日非常に人気がある理由は、主にその軽量性、迅速な展開、およびリソースの利用にありま...
フローティングの基礎標準ドキュメント フローでは、要素は塊級元素と行內元素の 2 種類に分けられます...
移動を実現するためにtranslateパラメータを使用しますtranslateX: X 軸に沿って移...
パート1: 基礎1. :active や :hover などの疑似クラスとは異なり、これらはすべて疑...
MySQL は非常に強力なリレーショナル データベースです。しかし、初心者の中には、インストールや設...
テトリスは非常に古典的な小さなゲームで、私もそれを書いてみました。しかし、できるだけ簡潔で論理的なコ...
インストールFilebeat は、より軽量でより安全なため、Logstash-Forwarder に...
他の人のウェブページを保存して見たことがあると思いますが、特にdwで開くと、多くのウェブページに&l...
1. Alibaba Cloudは、個人のニーズに応じて適切なクラウドサーバーを選択し、CPU、メ...
NodeJS は次のファイルをコピーします:通常、小さなファイルのコピー操作では、ストリーム パイプ...
1. 基本概念1. Sitemeshはページ装飾技術です。 1 : フィルターを通してページアクセス...