1 <!DOCTYPE html><!-- This page is a placeholder for generated extensions api doc. Note: 2 1) The <head> information in this page is significant, should be uniform 3 across api docs and should be edited only with knowledge of the 4 templating mechanism. 5 3) All <body>.innerHTML is genereated as an rendering step. If viewed in a 6 browser, it will be re-generated from the template, json schema and 7 authored overview content. 8 4) The <body>.innerHTML is also generated by an offline step so that this 9 page may easily be indexed by search engines. 10 --><html xmlns="http://www.w3.org/1999/xhtml"><head> 11 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 12 <link href="css/ApiRefStyles.css" rel="stylesheet" type="text/css"> 13 <link href="css/print.css" rel="stylesheet" type="text/css" media="print"> 14 <script type="text/javascript" src="../../../third_party/jstemplate/jstemplate_compiled.js"> 15 </script> 16 <script type="text/javascript" src="js/api_page_generator.js"></script> 17 <script type="text/javascript" src="js/bootstrap.js"></script> 18 <script type="text/javascript" src="js/sidebar.js"></script> 19 <title>Hello There! - Google Chrome Extensions - Google Code</title></head> 20 <body> <div id="gc-container" class="labs"> 21 <div id="devModeWarning"> 22 You are viewing extension docs in chrome via the 'file:' scheme: are you expecting to see local changes when you refresh? You'll need run chrome with --allow-file-access-from-files. 23 </div> 24 <!-- SUBTEMPLATES: DO NOT MOVE FROM THIS LOCATION --> 25 <!-- In particular, sub-templates that recurse, must be used by allowing 26 jstemplate to make a copy of the template in this section which 27 are not operated on by way of the jsskip="true" --> 28 <div style="display:none"> 29 30 <!-- VALUE --> 31 <div id="valueTemplate"> 32 <dt> 33 <var>paramName</var> 34 <em> 35 36 <!-- TYPE --> 37 <div style="display:inline"> 38 ( 39 <span class="optional">optional</span> 40 <span class="enum">enumerated</span> 41 <span id="typeTemplate"> 42 <span> 43 <a> Type</a> 44 </span> 45 <span> 46 <span> 47 array of <span><span></span></span> 48 </span> 49 <span>paramType</span> 50 <span></span> 51 </span> 52 </span> 53 ) 54 </div> 55 56 </em> 57 </dt> 58 <dd class="todo"> 59 Undocumented. 60 </dd> 61 <dd> 62 Description of this parameter from the json schema. 63 </dd> 64 <dd> 65 This parameter was added in version 66 <b><span></span></b>. 67 You must omit this parameter in earlier versions, 68 and you may omit it in any version. If you require this 69 parameter, the manifest key 70 <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a> 71 can ensure that your extension won't be run in an earlier browser version. 72 </dd> 73 74 <!-- OBJECT PROPERTIES --> 75 <dd> 76 <dl> 77 <div> 78 <div> 79 </div> 80 </div> 81 </dl> 82 </dd> 83 84 <!-- OBJECT METHODS --> 85 <dd> 86 <div></div> 87 </dd> 88 89 <!-- OBJECT EVENT FIELDS --> 90 <dd> 91 <div></div> 92 </dd> 93 94 <!-- FUNCTION PARAMETERS --> 95 <dd> 96 <div></div> 97 </dd> 98 99 </div> <!-- /VALUE --> 100 101 <div id="functionParametersTemplate"> 102 <h5>Parameters</h5> 103 <dl> 104 <div> 105 <div> 106 </div> 107 </div> 108 </dl> 109 </div> 110 </div> <!-- /SUBTEMPLATES --> 111 112 <a id="top"></a> 113 <div id="skipto"> 114 <a href="#gc-pagecontent">Skip to page content</a> 115 <a href="#gc-toc">Skip to main navigation</a> 116 </div> 117 <!-- API HEADER --> 118 <table id="header" width="100%" cellspacing="0" border="0"> 119 <tbody><tr> 120 <td valign="middle"><a href="http://code.google.com/"><img src="images/code_labs_logo.gif" height="43" width="161" alt="Google Code Labs" style="border:0; margin:0;"></a></td> 121 <td valign="middle" width="100%" style="padding-left:0.6em;"> 122 <form action="http://www.google.com/cse" id="cse" style="margin-top:0.5em"> 123 <div id="gsc-search-box"> 124 <input type="hidden" name="cx" value="002967670403910741006:61_cvzfqtno"> 125 <input type="hidden" name="ie" value="UTF-8"> 126 <input type="text" name="q" value="" size="55"> 127 <input class="gsc-search-button" type="submit" name="sa" value="Search"> 128 <br> 129 <span class="greytext">e.g. "page action" or "tabs"</span> 130 </div> 131 </form> 132 133 <script type="text/javascript" src="http://www.google.com/jsapi"></script> 134 <script type="text/javascript">google.load("elements", "1", {packages: "transliteration"});</script> 135 <script type="text/javascript" src="http://www.google.com/coop/cse/t13n?form=cse&t13n_langs=en"></script> 136 <script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=cse&lang=en"></script> 137 </td> 138 </tr> 139 </tbody></table> 140 141 <div id="codesiteContent" class=""> 142 143 <a id="gc-topnav-anchor"></a> 144 <div id="gc-topnav"> 145 <h1>Google Chrome Extensions (<a href="http://code.google.com/labs/">Labs</a>)</h1> 146 <ul id="home" class="gc-topnav-tabs"> 147 <li id="home_link"> 148 <a href="index.html" title="Google Chrome Extensions home page">Home</a> 149 </li> 150 <li id="docs_link"> 151 <a href="docs.html" title="Official Google Chrome Extensions documentation">Docs</a> 152 </li> 153 <li id="faq_link"> 154 <a href="faq.html" title="Answers to frequently asked questions about Google Chrome Extensions">FAQ</a> 155 </li> 156 <li id="samples_link"> 157 <a href="samples.html" title="Sample extensions (with source code)">Samples</a> 158 </li> 159 <li id="group_link"> 160 <a href="http://groups.google.com/a/chromium.org/group/chromium-extensions" title="Google Chrome Extensions developer forum">Group</a> 161 </li> 162 </ul> 163 </div> <!-- end gc-topnav --> 164 165 <div class="g-section g-tpl-170"> 166 <!-- SIDENAV --> 167 <div class="g-unit g-first" id="gc-toc"> 168 <ul> 169 <li><a href="getstarted.html">Getting Started</a></li> 170 <li><a href="overview.html">Overview</a></li> 171 <li><a href="whats_new.html">What's New?</a></li> 172 <li><h2><a href="devguide.html">Developer's Guide</a></h2> 173 <ul> 174 <li>Browser UI 175 <ul> 176 <li><a href="browserAction.html">Browser Actions</a></li> 177 <li><a href="contextMenus.html">Context Menus</a></li> 178 <li><a href="notifications.html">Desktop Notifications</a></li> 179 <li><a href="omnibox.html">Omnibox</a></li> 180 <li><a href="options.html">Options Pages</a></li> 181 <li><a href="override.html">Override Pages</a></li> 182 <li><a href="pageAction.html">Page Actions</a></li> 183 </ul> 184 </li> 185 <li>Browser Interaction 186 <ul> 187 <li><a href="bookmarks.html">Bookmarks</a></li> 188 <li><a href="cookies.html">Cookies</a></li> 189 <li><a href="events.html">Events</a></li> 190 <li><a href="history.html">History</a></li> 191 <li><a href="management.html">Management</a></li> 192 <li><a href="tabs.html">Tabs</a></li> 193 <li><a href="windows.html">Windows</a></li> 194 </ul> 195 </li> 196 <li>Implementation 197 <ul> 198 <li><a href="a11y.html">Accessibility</a></li> 199 <li><a href="background_pages.html">Background Pages</a></li> 200 <li><a href="content_scripts.html">Content Scripts</a></li> 201 <li><a href="xhr.html">Cross-Origin XHR</a></li> 202 <li><a href="idle.html">Idle</a></li> 203 <li><a href="i18n.html">Internationalization</a></li> 204 <li><a href="messaging.html">Message Passing</a></li> 205 <li><a href="npapi.html">NPAPI Plugins</a></li> 206 </ul> 207 </li> 208 <li>Finishing 209 <ul> 210 <li><a href="hosting.html">Hosting</a></li> 211 <li><a href="external_extensions.html">Other Deployment Options</a></li> 212 </ul> 213 </li> 214 </ul> 215 </li> 216 <li><h2><a href="apps.html">Packaged Apps</a></h2></li> 217 <li><h2><a href="tutorials.html">Tutorials</a></h2> 218 <ul> 219 <li><a href="tut_debugging.html">Debugging</a></li> 220 <li><a href="tut_analytics.html">Google Analytics</a></li> 221 <li><a href="tut_oauth.html">OAuth</a></li> 222 </ul> 223 </li> 224 <li><h2>Reference</h2> 225 <ul> 226 <li>Formats 227 <ul> 228 <li><a href="manifest.html">Manifest Files</a></li> 229 <li><a href="match_patterns.html">Match Patterns</a></li> 230 </ul> 231 </li> 232 <li><a href="permission_warnings.html">Permission Warnings</a></li> 233 <li><a href="api_index.html">chrome.* APIs</a></li> 234 <li><a href="api_other.html">Other APIs</a></li> 235 </ul> 236 </li> 237 <li><h2><a href="samples.html">Samples</a></h2></li> 238 <div class="line"> </div> 239 <li><h2>More</h2> 240 <ul> 241 <li><a href="http://code.google.com/chrome/webstore/docs/index.html">Chrome Web Store</a></li> 242 <li><a href="http://code.google.com/chrome/apps/docs/developers_guide.html">Hosted Apps</a></li> 243 <li><a href="themes.html">Themes</a></li> 244 </ul> 245 </li> 246 </ul> 247 </div> 248 <script> 249 initToggles(); 250 </script> 251 252 <div class="g-unit" id="gc-pagecontent"> 253 <div id="pageTitle"> 254 <h1 class="page_title">Hello There!</h1> 255 </div> 256 <!-- TABLE OF CONTENTS --> 257 <div id="toc" style="display: none; "> 258 <h2>Contents</h2> 259 <ol> 260 <li> 261 <a>h2Name</a> 262 <ol> 263 <li> 264 <a>h3Name</a> 265 </li> 266 </ol> 267 </li> 268 <li> 269 <a href="#apiReference">API reference</a> 270 <ol> 271 <li> 272 <a href="#properties">Properties</a> 273 <ol> 274 <li> 275 <a href="#property-anchor">propertyName</a> 276 </li> 277 </ol> 278 </li> 279 <li> 280 <a>Methods</a> 281 <ol> 282 <li> 283 <a href="#method-anchor">methodName</a> 284 </li> 285 </ol> 286 </li> 287 <li> 288 <a>Events</a> 289 <ol> 290 <li> 291 <a href="#event-anchor">eventName</a> 292 </li> 293 </ol> 294 </li> 295 <li> 296 <a href="#types">Types</a> 297 <ol> 298 <li> 299 <a href="#id-anchor">id</a> 300 </li> 301 </ol> 302 </li> 303 </ol> 304 </li> 305 </ol> 306 </div> 307 <!-- /TABLE OF CONTENTS --> 308 309 <!-- Standard content lead-in for experimental API pages --> 310 <p id="classSummary" style="display: none; "> 311 For information on how to use experimental APIs, see the <a href="experimental.html">chrome.experimental.* APIs</a> page. 312 </p> 313 314 <!-- STATIC CONTENT PLACEHOLDER --> 315 <div id="static"><div id="pageData-name" class="pageData">Hello There!</div> 316 317 <p> 318 This documentation tells you how to write extensions 319 and packaged apps for the 320 <a href="http://www.google.com/chrome">Google Chrome browser</a>. 321 Because extensions came first, 322 the APIs and these docs say <em>extension</em> everywhere. 323 </p> 324 325 <p class="caution"> 326 <b>Note:</b> 327 Unless you see a note 328 describing an exception for packaged apps, 329 everything in this documentation applies to both extensions and packaged apps. 330 </p> 331 332 333 <h2 id="readme"> Where to start </h2> 334 335 <p> 336 Before you code, 337 read these: 338 </p> 339 340 <dl> 341 <dt> <a href="getstarted.html">Getting Started (Hello, World!)</a> </dt> 342 <dd> Build a simple "Hello, World" extension in about 5 minutes </dd> 343 344 <dt> <a href="overview.html">Overview</a> </dt> 345 <dd> Learn about the fundamental design points of the extension system </dd> 346 </dl> 347 348 <p> 349 Also check out these: 350 </p> 351 352 <ul> 353 <li> 354 <a href="devguide.html">Developer's Guide</a> 355 </li> 356 <li> 357 <a href="samples.html">Samples</a> 358 </li> 359 <li> 360 <a href="http://groups.google.com/a/chromium.org/group/chromium-extensions">Group: chromium-extensions</a> 361 </li> 362 <li> 363 <a href="http://chrome.google.com/webstore">Chrome Web Store</a> 364 </li> 365 <li> 366 <a href="http://code.google.com/chrome/webstore/">Chrome Web Store 367 developer documentation</a> 368 </li> 369 </ul> 370 371 <h2 id="versions"> Doc versions </h2> 372 <p> 373 In general, you should view these pages at 374 <b>http://code.google.com/chrome/extensions/<em><filename></em></b> 375 (for example, 376 <a href="http://code.google.com/chrome/extensions/overview.html">http://code.google.com/chrome/extensions/overview.html</a>). 377 However, if you need to see the very latest doc 378 or you're using a different version of Google Chrome 379 than most of the world is 380 (perhaps the <a href="http://dev.chromium.org/getting-involved/dev-channel">Dev channel</a>), 381 you might want to use a different URL 382 (for example, 383 <a href="http://code.google.com/chrome/extensions/dev/overview.html">.../extensions/<b>dev/</b>overview.html</a>). 384 The following table lists the doc locations and explains how they differ. 385 </p> 386 387 <p> 388 </p><table class="noborders"> 389 <tbody><tr> 390 <th> URL </th> <th> Version </th> 391 </tr> 392 <tr> 393 <td> 394 <a href="http://code.google.com/chrome/extensions/overview.html">.../extensions/...</a> 395 </td> 396 <td> 397 The version you should probably be using. 398 This documents the most stable version of the extension API. 399 </td> 400 </tr> 401 <tr> 402 <td> 403 <a href="http://code.google.com/chrome/extensions/beta/overview.html">.../extensions/<b>beta/</b>...</a> 404 </td> 405 <td> 406 <p> 407 Documentation for the Beta channel version of Google Chrome. 408 </p> 409 410 <p> 411 <strong>Note:</strong> 412 APIs on the Beta channel are subject to change. 413 </p> 414 </td> 415 </tr> 416 <tr> 417 <td> 418 <a href="http://code.google.com/chrome/extensions/dev/overview.html">.../extensions/<b>dev/</b>...</a> 419 </td> 420 <td> 421 <p> 422 Documentation for the Dev channel version of Google Chrome. 423 This version might also have bug fixes and feature information 424 that are relevant to the current doc 425 but haven't been integrated into it yet. 426 </p> 427 428 <p> 429 <strong>Note:</strong> 430 APIs on the Dev channel are subject to change. 431 </p> 432 </td> 433 </tr> 434 <tr> 435 <td> 436 <a href="http://code.google.com/chrome/extensions/trunk/overview.html">.../extensions/<b>trunk/</b>...</a> 437 </td> 438 <td> 439 The very latest documentation. 440 Look here if you're using a tip-of-tree version of 441 <a href="http://dev.chromium.org">Chromium</a> 442 or if you're curious about features to come. 443 This version might also have bug fixes and feature information 444 that are relevant to the current doc 445 but haven't been integrated into it yet. 446 447 <p> 448 <strong>Note:</strong> 449 The trunk version of the doc is preliminary and might have errors. 450 </p> 451 </td> 452 </tr> 453 </tbody></table> 454 <p></p> 455 </div> 456 457 <!-- API PAGE --> 458 <div class="apiPage" style="display: none; "> 459 <a name="apiReference"></a> 460 <h2>API reference: chrome.apiname </h2> 461 462 <!-- PROPERTIES --> 463 <div class="apiGroup"> 464 <a name="properties"></a> 465 <h3 id="properties">Properties</h3> 466 467 <div> 468 <a></a> 469 <h4>getLastError</h4> 470 <div class="summary"> 471 <!-- Note: intentionally longer 80 columns --> 472 <span>chrome.extension</span><span>lastError</span> 473 </div> 474 <div> 475 </div> 476 </div> 477 478 </div> <!-- /apiGroup --> 479 480 <!-- METHODS --> 481 <div id="methodsTemplate" class="apiGroup"> 482 <a></a> 483 <h3>Methods</h3> 484 485 <!-- iterates over all functions --> 486 <div class="apiItem"> 487 <a></a> <!-- method-anchor --> 488 <h4>method name</h4> 489 490 <div class="summary"><span>void</span> 491 <!-- Note: intentionally longer 80 columns --> 492 <span>chrome.module.methodName</span>(<span><span>, </span><span></span> 493 <var><span></span></var></span>)</div> 494 495 <div class="description"> 496 <p class="todo">Undocumented.</p> 497 <p> 498 A description from the json schema def of the function goes here. 499 </p> 500 501 <!-- PARAMETERS --> 502 <h4>Parameters</h4> 503 <dl> 504 <div> 505 <div> 506 </div> 507 </div> 508 </dl> 509 510 <!-- RETURNS --> 511 <h4>Returns</h4> 512 <dl> 513 <div> 514 <div> 515 </div> 516 </div> 517 </dl> 518 519 <!-- CALLBACK --> 520 <div> 521 <div> 522 <h4>Callback function</h4> 523 <p> 524 The callback <em>parameter</em> should specify a function 525 that looks like this: 526 </p> 527 <p> 528 If you specify the <em>callback</em> parameter, it should 529 specify a function that looks like this: 530 </p> 531 532 <!-- Note: intentionally longer 80 columns --> 533 <pre>function(<span>Type param1, Type param2</span>) <span class="subdued">{...}</span>;</pre> 534 <dl> 535 <div> 536 <div> 537 </div> 538 </div> 539 </dl> 540 </div> 541 </div> 542 543 <!-- MIN_VERSION --> 544 <p> 545 This function was added in version <b><span></span></b>. 546 If you require this function, the manifest key 547 <a href="manifest.html#minimum_chrome_version">minimum_chrome_version</a> 548 can ensure that your extension won't be run in an earlier browser version. 549 </p> 550 </div> <!-- /description --> 551 552 </div> <!-- /apiItem --> 553 554 </div> <!-- /apiGroup --> 555 556 <!-- EVENTS --> 557 <div id="eventsTemplate" class="apiGroup"> 558 <a></a> 559 <h3>Events</h3> 560 <!-- iterates over all events --> 561 <div class="apiItem"> 562 <a></a> 563 <h4>event name</h4> 564 565 <div class="summary"> 566 <!-- Note: intentionally longer 80 columns --> 567 <span class="subdued">chrome.bookmarks</span><span>onEvent</span><span class="subdued">.addListener</span>(function(<span>Type param1, Type param2</span>) <span class="subdued">{...}</span>); 568 </div> 569 570 <div class="description"> 571 <p class="todo">Undocumented.</p> 572 <p> 573 A description from the json schema def of the event goes here. 574 </p> 575 576 <!-- PARAMETERS --> 577 <div> 578 <h4>Parameters</h4> 579 <dl> 580 <div> 581 <div> 582 </div> 583 </div> 584 </dl> 585 </div> 586 </div> <!-- /decription --> 587 588 </div> <!-- /apiItem --> 589 590 </div> <!-- /apiGroup --> 591 592 <!-- TYPES --> 593 <div class="apiGroup"> 594 <a name="types"></a> 595 <h3 id="types">Types</h3> 596 597 <!-- iterates over all types --> 598 <div class="apiItem"> 599 <a></a> 600 <h4>type name</h4> 601 602 <div> 603 </div> 604 605 </div> <!-- /apiItem --> 606 607 </div> <!-- /apiGroup --> 608 609 </div> <!-- /apiPage --> 610 </div> <!-- /gc-pagecontent --> 611 </div> <!-- /g-section --> 612 </div> <!-- /codesiteContent --> 613 <div id="gc-footer" --=""> 614 <div class="text"> 615 <p> 616 Except as otherwise <a href="http://code.google.com/policies.html#restrictions">noted</a>, 617 the content of this page is licensed under the <a rel="license" href="http://creativecommons.org/licenses/by/3.0/">Creative Commons 618 Attribution 3.0 License</a>, and code samples are licensed under the 619 <a rel="license" href="http://code.google.com/google_bsd_license.html">BSD License</a>. 620 </p> 621 <p> 622 2011 Google 623 </p> 624 625 <!-- begin analytics --> 626 <script src="http://www.google-analytics.com/urchin.js" type="text/javascript"></script> 627 <script src="http://www.google-analytics.com/ga.js" type="text/javascript"></script> 628 629 <script type="text/javascript"> 630 // chrome doc tracking 631 try { 632 var engdocs = _gat._getTracker("YT-10763712-2"); 633 engdocs._trackPageview(); 634 } catch(err) {} 635 636 // code.google.com site-wide tracking 637 try { 638 _uacct="UA-18071-1"; 639 _uanchor=1; 640 _uff=0; 641 urchinTracker(); 642 } 643 catch(e) {/* urchinTracker not available. */} 644 </script> 645 <!-- end analytics --> 646 </div> 647 </div> <!-- /gc-footer --> 648 </div> <!-- /gc-container --> 649 </body></html> 650