Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(432)

Side by Side Diff: chrome/common/extensions/docs/server2/templates/articles/options.html

Issue 10832042: Extensions Docs Server: Doc conversion script (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: everything but svn stuff Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 <h1>Options</h1>
2
3 <p>To allow users to customize the behavior of your extension, you may wish to p rovide an options page. If you do, a link to it will be provided from the extens ions management page at chrome://extensions. Clicking the Options link opens a n ew tab pointing at your options page.
4
5 <h2>Step 1: Declare your options page in the manifest</h2>
6
7 <pre>{
8 "name": "My extension",
9 ...
10 <b>"options_page": "options.html"</b>,
11 ...
12 }</pre>
13
14
15 <h2>Step 2: Write your options page</h2>
16
17 Here is an example options page:
18
19 <pre>// Save this script as `options.js`
20
21 // Saves options to localStorage.
22 function save_options() {
23 var select = document.getElementById("color");
24 var color = select.children[select.selectedIndex].value;
25 localStorage["favorite_color"] = color;
26
27 // Update status to let user know options were saved.
28 var status = document.getElementById("status");
29 status.innerHTML = "Options Saved.";
30 setTimeout(function() {
31 status.innerHTML = "";
32 }, 750);
33 }
34
35 // Restores select box state to saved value from localStorage.
36 function restore_options() {
37 var favorite = localStorage["favorite_color"];
38 if (!favorite) {
39 return;
40 }
41 var select = document.getElementById("color");
42 for (var i = 0; i &lt; select.children.length; i++) {
43 var child = select.children[i];
44 if (child.value == favorite) {
45 child.selected = "true";
46 break;
47 }
48 }
49 }
50 document.addEventListener('DOMContentReady', restore_options);
51 document.querySelector('#save').addEventListener('click', save_options);
52 </pre>
53
54 <pre>
55 &lt;html>
56 &lt;head>&lt;title>My Test Extension Options&lt;/title>&lt;/head>
57 &lt;script src="options.js">
58
59 &lt;body>
60
61 Favorite Color:
62 &lt;select id="color">
63 &lt;option value="red">red&lt;/option>
64 &lt;option value="green">green&lt;/option>
65 &lt;option value="blue">blue&lt;/option>
66 &lt;option value="yellow">yellow&lt;/option>
67 &lt;/select>
68
69 &lt;br>
70 &lt;div id="status">&lt;/div>
71 &lt;button id="save">Save&lt;/button>
72 &lt;/body>
73 &lt;/html>
74 </pre>
75
76 <h2>Important notes</h2>
77 <ul>
78 <li>We plan on providing some default css styles to encourage a consistent look across different extensions' options pages. You can star <a href="http://crbug.c om/25317">crbug.com/25317</a> to be notified of updates.</li>
79 </ul>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698