<!doctype html> <html> <head> <title>Getting Started Extension's Popup</title> <style> body { font-family: "Segoe UI", "Lucida Grande", Tahoma, sans-serif; font-size: 100%; } #status { /* avoid an excessively wide status text */ white-space: pre; text-overflow: ellipsis; overflow: hidden; max-width: 400px; } </style>
<!-- - JavaScript and HTML must be in separate files: see our Content Security - Policy documentation[1] for details and explanation. - - [1]: https://developer.chrome.com/extensions/contentSecurityPolicy --> <script src="popup.js"></script> </head> <body> Hello <div id="status"></div> <img id="image-result" hidden> </body> </html>
唯一要注意的是,js 檔案要和 html 分開,不能將 javascript 放在 html 裡面
1 2
JavaScript and HTML must be in separate files: see our Content Security Policy documentation[1] for details and explanation.
function pressBtn() { console.log("Press Button!"); } document.addEventListener("DOMContentLoaded", pressBtn);
接下來看這個 API chrome.tabs.query(object queryInfo, function callback)
queryInfo是你自訂的一個物件,此物件裡面有許多參數可以使用
例如你可以這樣寫來建立一個物件
1 2 3 4
var queryInfo = { active : true, // 取得目前的 TAB 頁面 currentWindow : true // 取得目前的 Window 頁面 };
Window表示目前使用的 Chrome,因為你可以開多個 Chrome
所以你要指定目前使用的Chrome,以及目前使用的頁面,所以把程式改寫為
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
functioncurrentTabInfo(tabs) { var tab = tabs[0]; var url = tab.url; console.assert(typeof url == 'string', 'tab.url should be a string'); console.log("Current Tab Url = "+url); }
functiongetCurrentTabUrl() { var queryInfo = { active : true, currentWindow : true }; chrome.tabs.query(queryInfo, currentTabInfo); }