問題タブ [safari-web-extension]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
32 参照

google-chrome-extension - WebExtension API: DOM 置換のオン/オフを切り替えます

私はWebExtension API(ChromeではなくSafariで)を使い始めたばかりで、拡張機能がポップオーバーUIにボタンを表示し、それをクリックするとcontent.jsスクリプトが特定のものを置き換えます別の特定の単語を含むページ上の単語。

これはうまく機能しますが、ポップオーバー UI に、この置換呼び出しを簡単に元に戻す別のボタンが必要です。現在、同じ置換機能を逆に実行しているだけですが、実行されたすべての拡張アクションをもう一度定義する必要がなく、ページを更新してすべての変更を元に戻すだけでなく、実行されたすべての拡張アクションを元に戻す方法があるかどうか疑問に思っています。

これが理にかなっていることを願っています。誰かが与えることができるポインタをいただければ幸いです!

0 投票する
0 に答える
115 参照

ios - Safari Web 拡張機能のバックグラウンド リクエスト CORS の問題

私は iOS 15 で Safari Web 拡張機能に取り組んでいますが、1 つのことを除いて、これまでのところすべてがスムーズに見えます: background.js からのフェッチ要求は、クロスオリジンであるため常に失敗し、CORS エラーがスローされます。

サーバーに「Access-Control-Allow-Origin: *」を追加すると、リクエストはエラーなしで完了します。ただし、すべてのオリジンを許可することには消極的です。

試した解決策

アプリがインストールされるたびに GUID が変更されるため、これは機能しませんでした。

これを解決するためのアドバイスはありますか?どうもありがとう

0 投票する
0 に答える
16 参照

ios - ネストされた div クラスを blockerList.json に追加します

私は現在、ソーシャル メディア ページから特定の要素をブロックするサファリ アプリの拡張機能に取り組んでいます。たとえば、いいねの数をブロックしたいとします。Safari の Web コンソールをチェックインすると、div 要素が表示されます

私の問題は、blockerList.json 内でこの要素をブロックする方法がわからないことです。これは私のアプローチですが、うまくいかないようです:

私の質問は、いくつかのjsを注入する必要がありますか、それともより良いアプローチでしょうか?

助けてくれてありがとう。

0 投票する
0 に答える
10 参照

html - Ipad の Safari Web 拡張機能が DOM 操作に応答しない

私は Safari Web 拡張機能を持っています。ボタンをクリックすると、ドロップダウンが表示されるはずです。もう一度クリックすると消えます。これは、他のすべての ios デバイスおよび mac では期待どおりに機能しますが、ipad では、最も外側のコンテナー (白い部分) が下降したままになります。これが機能する方法は、html にセクションがあることです。

その中の "showhide" div は、デフォルトで "display: none" に設定されています。ボタンをクリックすると、「display: block」に設定され、そのセクションが展開され、情報のリストが表示されます。もう一度クリックすると、「表示: なし」に設定され、すべてのコンテンツが消えますが、最も外側のコンテナーは大きいままです。私のhtmlコードにもないので、編集方法を教えてください。 - 下記参照 ここに画像の説明を入力

ご覧のとおり、html が強調表示されていますが、使用可能な空白の約半分しかカバーしていないため、最も外側の要素が下降したままになっている原因がわかりません。誰かがこれを修正する方法を知っているなら、私に知らせてください。

0 投票する
1 に答える
67 参照

ios - 拡張機能が iPad と iPhone で実行されているかどうかを検出する方法はありますか

Chrome/Firefox から iOS の Safari に拡張機能を移植しています。拡張機能のポップアップが表示されたとき、iOS の Safari では 2 つの異なる動作があります。iPhone では、画面の下部から全画面幅のメニューとして表示されます。iPad では、MacOS の Safari のように動作し、ポップアップはツールバーの拡張機能アイコンからダウンし、動的にサイズ変更されます。

JavaScript コードでこれら 2 つの異なるケースを検出したいと思います。前者の場合、ポップアップ ウィンドウの幅の設定を控えたい (問題が発生するため) 後者の場合、幅を設定したい (Chrome などで行うのと同じ方法で)。

iPad と iPhone を検出するケースであるかどうかはわかりません (ただし、その方法を知りたいと思います)。後者の動作を使用する原因となる十分に大きな画面サイズの iPhone が存在する可能性があります。