テキストのパッセージが強調表示されたときにコンテキスト メニューにいくつかの項目を追加するクロム拡張機能があります。メニュー項目がクリックされると、クエリがサーバーに送信され、応答がユーザーに表示されます。私の拡張機能は機能しますが、改善してほしい問題が 2 つあります。
1 つ目は、クエリに数秒かかる可能性があることです。クエリが送信されて待機中であることをユーザーに示したいと思います。カーソルを待機に変更することもできますが、フローティング HTML ブロックやツールチップのようなものの方がよいでしょう。しかし、JavaScript でこれを実行しようとすると、ドキュメントの変更は、ユーザーが現在見ているページではなく、バックグラウンド ページで終了します。現在のページの DOM にアクセスするにはどうすればよいですか?
2 番目に関連して、私の拡張機能は現在、ポップアップ ウィンドウを開いてクエリの結果を表示しています。バックグラウンド ページからポップアップ ウィンドウにメッセージを送信しようとする必要がありますが、タイミングがおかしい場合があり、ポップアップが受信する準備が整う前にメッセージが送信されてしまいます。本当に、「ポップアップ」を現在アクティブなページに追加されたhtml要素にして、javascriptを使用して操作できるようにしたいだけです。そのページの DOM にアクセスできればできると思いますが、方法がわかりません。それを行う方法はありますか?