Opera ブラウザの拡張機能を開発しています。Opera 拡張機能をリロードできる関数、または問題を解決する別の方法を探しています。ユーザーが古いバージョンの拡張機能 (リスト ビューまたは「newmenu」) と新しいバージョン (通常のビューまたは「oldmenu」) を切り替えられるようにしたいと考えています。
これを行うコードは次のとおりです。
<a id="switch" href="javascript: void(0)" onClick="widget.preferences.version = 'newmenu'; document.getElementById('switch').innerHTML = 'Please reload the extension';">[Switch to Normal View]</a>
このoldmenu.htmlファイルの widget.preferences.version = 'newmenu'は、新しいメニューと、menu.html にあるwidget.preferences.version = 'oldmenu' (ここには示されていません)を使用するようにユーザー設定を設定します。、古いメニューを使用するようにユーザー設定を設定します。
次に、index.htmlファイルで、拡張機能が古いメニューと新しいメニューのどちらを表示する必要があるかを確認します。
if (widget.preferences.version == "oldmenu") {
var ToolbarUIItemProperties = {title: "4chan Boards", icon: "icons/icon_64x64.png", popup: {href: "oldmenu.html", width: 220, height: 620}}
} else {
var ToolbarUIItemProperties = {title: "4chan Boards", icon: "icons/icon_64x64.png", popup: {href: "menu.html", width: 250, height: 350}}
}
問題は、このコードを実行するために、ユーザーが拡張機能を手動でリロードする必要があることです。これは非常に見苦しいものです。
そして、Opera 開発フォーラムは現在アクセスできないため (ゲートウェイが悪く、読み込みに時間がかかるため)、質問をするのに最適な場所だと思います。御時間ありがとうございます。