Home | History | Annotate | Download | only in docs
      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>&lt;filename&gt;</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