開いているタブの一覧表示
このチュートリアルに沿って学習するには、あらかじめ SDK をインストールし、cfx
入門を学習してください。
開いているタブを一覧表示するには、tabs
オブジェクトを反復処理します。
以下のアドオンは、ユーザーがクリックしたときに、開いているタブの URL をログとして出力するウィジェット を追加します。
1 2 3 4 5 6 7 8 9 10 11 12 | var widget = require( "widget" ).Widget({ id: "mozilla-link" , label: "Mozilla website" , onClick: listTabs }); function listTabs() { var tabs = require( "tabs" ); for each ( var tab in tabs) console.log(tab.url); } |
このアドオンを実行し、タブを 2、3 個読み込み、ウィジェットをクリックすると、コンソールに以下のような出力が表示されます。
info: http://www.mozilla.org/en-US/about/ info: http://www.bbc.co.uk/
このタブでホストされるコンテンツには直接アクセスできません。タブのコンテンツにアクセスするには、tab.attach()
を使用してタブにスクリプトを付加する必要があります。以下のアドオンは、開いているすべてのタブにスクリプトを付加します。付加されたスクリプトは、タブの文書に赤い枠を追加します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | var widget = require( "widget" ).Widget({ id: "mozilla-link" , label: "Mozilla website" , onClick: listTabs }); function listTabs() { var tabs = require( "tabs" ); for each ( var tab in tabs) runScript(tab); } function runScript(tab) { tab.attach({ contentScript: "document.body.style.border = '5px solid red';" }); } |
さらに詳しく
SDK でのタブの操作方法の詳細については、API リファレンス:tabs
(英語)を参照してください。
タブでスクリプトを実行する方法の詳細については、tab.attach()
の使用方法についてのチュートリアルを参照してください。