javascript.mustache 81.9 KB
Newer Older
1001
              <a class="btn btn-danger" href="#">Take this action</a> <a class="btn" href="#">Or do this</a>
Mark Otto's avatar
Mark Otto committed
1002
1003
1004
1005
1006
1007
1008
1009
            </p>
          </div>
        </div>{{! /example }}


        <hr class="bs-docs-separator">


1010
1011
        <h2>Usage</h2>
        <p>Enable dismissal of an alert via JavaScript:</p>
Mark Otto's avatar
Mark Otto committed
1012
1013
        <pre class="prettyprint linenums">$(".alert").alert()</pre>

1014
1015
        <h3>Markup</h3>
        <p>Just add <code>data-dismiss="alert"</code> to your close button to automatically give an alert close functionality.</p>
Mark Otto's avatar
Mark Otto committed
1016
1017
        <pre class="prettyprint linenums">&lt;a class="close" data-dismiss="alert" href="#"&gt;&amp;times;&lt;/a&gt;</pre>

1018
        <h3>Methods</h3>
Mark Otto's avatar
Mark Otto committed
1019
        <h4>$().alert()</h4>
1020
        <p>Wraps all alerts with close functionality. To have your alerts animate out when closed, make sure they have the <code>.fade</code> and <code>.in</code> class already applied to them.</p>
Mark Otto's avatar
Mark Otto committed
1021
        <h4>.alert('close')</h4>
1022
        <p>Closes an alert.</p>
Mark Otto's avatar
Mark Otto committed
1023
1024
1025
        <pre class="prettyprint linenums">$(".alert").alert('close')</pre>


1026
1027
        <h3>Events</h3>
        <p>Bootstrap's alert class exposes a few events for hooking into alert functionality.</p>
Mark Otto's avatar
Mark Otto committed
1028
1029
1030
        <table class="table table-bordered table-striped">
          <thead>
           <tr>
1031
1032
             <th style="width: 150px;">Event</th>
             <th>Description</th>
Mark Otto's avatar
Mark Otto committed
1033
1034
1035
1036
           </tr>
          </thead>
          <tbody>
           <tr>
1037
1038
             <td>close</td>
             <td>This event fires immediately when the <code>close</code> instance method is called.</td>
Mark Otto's avatar
Mark Otto committed
1039
1040
           </tr>
           <tr>
1041
1042
             <td>closed</td>
             <td>This event is fired when the alert has been closed (will wait for css transitions to complete).</td>
Mark Otto's avatar
Mark Otto committed
1043
1044
1045
           </tr>
          </tbody>
        </table>
1046
1047
<pre class="prettyprint linenums">
$('#my-alert').bind('closed', function () {
1048
  // do something…
1049
1050
})
</pre>
Mark Otto's avatar
Mark Otto committed
1051
      </section>
1052
1053


1054

1055
1056
1057
1058
          <!-- Buttons
          ================================================== -->
          <section id="buttons">
            <div class="page-header">
1059
              <h1>Buttons <small>bootstrap-button.js</small></h1>
1060
            </div>
1061

1062
1063
            <h2>Example uses</h2>
            <p>Do more with buttons. Control button states or create groups of buttons for more components like toolbars.</p>
1064

1065
            <h4>Stateful</h4>
1066
            <p>Add <code>data-loading-text="Loading..."</code> to use a loading state on a button.</p>
1067
1068
            <div class="bs-docs-example" style="padding-bottom: 24px;">
              <button type="button" id="fat-btn" data-loading-text="loading..." class="btn btn-primary">
1069
                Loading state
1070
1071
1072
1073
              </button>
            </div>{{! /example }}
            <pre class="prettyprint linenums">&lt;button type="button" class="btn btn-primary" data-loading-text="Loading..."&gt;Loading state&lt;/button&gt;</pre>

1074
            <h4>Single toggle</h4>
1075
            <p>Add <code>data-toggle="button"</code> to activate toggling on a single button.</p>
1076
            <div class="bs-docs-example" style="padding-bottom: 24px;">
1077
              <button type="button" class="btn btn-primary" data-toggle="button">Single Toggle</button>
1078
            </div>{{! /example }}
1079
            <pre class="prettyprint linenums">&lt;button type="button" class="btn btn-primary" data-toggle="button"&gt;Single Toggle&lt;/button&gt;</pre>
1080

1081
            <h4>Checkbox</h4>
1082
            <p>Add <code>data-toggle="buttons-checkbox"</code> for checkbox style toggling on btn-group.</p>
1083
1084
            <div class="bs-docs-example" style="padding-bottom: 24px;">
              <div class="btn-group" data-toggle="buttons-checkbox">
1085
1086
1087
                <button type="button" class="btn btn-primary">Left</button>
                <button type="button" class="btn btn-primary">Middle</button>
                <button type="button" class="btn btn-primary">Right</button>
1088
1089
              </div>
            </div>{{! /example }}
1090
1091
<pre class="prettyprint linenums">
&lt;div class="btn-group" data-toggle="buttons-checkbox"&gt;
1092
1093
1094
  &lt;button type="button" class="btn btn-primary"&gt;Left&lt;/button&gt;
  &lt;button type="button" class="btn btn-primary"&gt;Middle&lt;/button&gt;
  &lt;button type="button" class="btn btn-primary"&gt;Right&lt;/button&gt;
1095
1096
&lt;/div&gt;
</pre>
1097

1098
            <h4>Radio</h4>
1099
            <p>Add <code>data-toggle="buttons-radio"</code> for radio style toggling on btn-group.</p>
1100
1101
            <div class="bs-docs-example" style="padding-bottom: 24px;">
              <div class="btn-group" data-toggle="buttons-radio">
1102
1103
1104
                <button type="button" class="btn btn-primary">Left</button>
                <button type="button" class="btn btn-primary">Middle</button>
                <button type="button" class="btn btn-primary">Right</button>
1105
1106
              </div>
            </div>{{! /example }}
1107
1108
<pre class="prettyprint linenums">
&lt;div class="btn-group" data-toggle="buttons-radio"&gt;
1109
1110
1111
  &lt;button type="button" class="btn btn-primary"&gt;Left&lt;/button&gt;
  &lt;button type="button" class="btn btn-primary"&gt;Middle&lt;/button&gt;
  &lt;button type="button" class="btn btn-primary"&gt;Right&lt;/button&gt;
1112
1113
&lt;/div&gt;
</pre>
1114

1115

1116
            <hr class="bs-docs-separator">
1117
1118


1119
1120
            <h2>Usage</h2>
            <p>Enable buttons via JavaScript:</p>
1121
            <pre class="prettyprint linenums">$('.nav-tabs').button()</pre>
1122

1123
1124
            <h3>Markup</h3>
            <p>Data attributes are integral to the button plugin. Check out the example code below for the various markup types.</p>
1125

1126
1127
            <h3>Options</h3>
            <p><em>None</em></p>
1128

1129
            <h3>Methods</h3>
1130
            <h4>$().button('toggle')</h4>
1131
            <p>Toggles push state. Gives the button the appearance that it has been activated.</p>
1132
            <div class="alert alert-info">
1133
1134
              <strong>Heads up!</strong>
              You can enable auto toggling of a button by using the <code>data-toggle</code> attribute.
1135
1136
1137
            </div>
            <pre class="prettyprint linenums">&lt;button type="button" class="btn" data-toggle="button" &gt;&lt;/button&gt;</pre>
            <h4>$().button('loading')</h4>
1138
            <p>Sets button state to loading - disables button and swaps text to loading text. Loading text should be defined on the button element using the data attribute <code>data-loading-text</code>.
1139
1140
1141
            </p>
            <pre class="prettyprint linenums">&lt;button type="button" class="btn" data-loading-text="loading stuff..." &gt;...&lt;/button&gt;</pre>
            <div class="alert alert-info">
1142
1143
              <strong>Heads up!</strong>
              <a href="https://github.com/twitter/bootstrap/issues/793">Firefox persists the disabled state across page loads</a>. A workaround for this is to use <code>autocomplete="off"</code>.
1144
1145
            </div>
            <h4>$().button('reset')</h4>
1146
            <p>Resets button state - swaps text to original text.</p>
1147
            <h4>$().button(string)</h4>
1148
            <p>Resets button state - swaps text to any data defined text state.</p>
1149
<pre class="prettyprint linenums">&lt;button type="button" class="btn" data-complete-text="finished!" &gt;...&lt;/button&gt;
1150
&lt;script&gt;
Jacob Thornton's avatar
Jacob Thornton committed
1151
  $('.btn').button('complete')
1152
1153
&lt;/script&gt;
</pre>
1154
          </section>
1155
1156
1157



1158
1159
1160
1161
          <!-- Collapse
          ================================================== -->
          <section id="collapse">
            <div class="page-header">
1162
              <h1>Collapse <small>bootstrap-collapse.js</small></h1>
1163
            </div>
1164

1165
1166
1167
            <h3>About</h3>
            <p>Get base styles and flexible support for collapsible components like accordions and navigation.</p>
            <p class="muted"><strong>*</strong> Requires the Transitions plugin to be included.</p>
1168

1169
1170
            <h2>Example accordion</h2>
            <p>Using the collapse plugin, we built a simple accordion style widget:</p>
1171

1172
1173
1174
1175
1176
            <div class="bs-docs-example">
              <div class="accordion" id="accordion2">
                <div class="accordion-group">
                  <div class="accordion-heading">
                    <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseOne">
1177
                      Collapsible Group Item #1
1178
                    </a>
1179
                  </div>
1180
1181
1182
1183
                  <div id="collapseOne" class="accordion-body collapse in">
                    <div class="accordion-inner">
                      Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
                    </div>
1184
                  </div>
1185
                </div>
1186
1187
1188
                <div class="accordion-group">
                  <div class="accordion-heading">
                    <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseTwo">
1189
                      Collapsible Group Item #2
1190
1191
1192
1193
1194
1195
1196
                    </a>
                  </div>
                  <div id="collapseTwo" class="accordion-body collapse">
                    <div class="accordion-inner">
                      Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
                    </div>
                  </div>
1197
                </div>
1198
1199
1200
                <div class="accordion-group">
                  <div class="accordion-heading">
                    <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseThree">
1201
                      Collapsible Group Item #3
1202
1203
1204
1205
1206
1207
                    </a>
                  </div>
                  <div id="collapseThree" class="accordion-body collapse">
                    <div class="accordion-inner">
                      Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
                    </div>
1208
                  </div>
1209
                </div>
1210
              </div>
1211
            </div>{{! /example }}
1212
<pre class="prettyprint linenums">
1213
1214
1215
1216
&lt;div class="accordion" id="accordion2"&gt;
  &lt;div class="accordion-group"&gt;
    &lt;div class="accordion-heading"&gt;
      &lt;a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseOne"&gt;
1217
        Collapsible Group Item #1
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
      &lt;/a&gt;
    &lt;/div&gt;
    &lt;div id="collapseOne" class="accordion-body collapse in"&gt;
      &lt;div class="accordion-inner"&gt;
        Anim pariatur cliche...
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="accordion-group"&gt;
    &lt;div class="accordion-heading"&gt;
      &lt;a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseTwo"&gt;
1229
        Collapsible Group Item #2
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
      &lt;/a&gt;
    &lt;/div&gt;
    &lt;div id="collapseTwo" class="accordion-body collapse"&gt;
      &lt;div class="accordion-inner"&gt;
        Anim pariatur cliche...
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;
...
</pre>
1241
            <p>You can also use the plugin without the accordion markup. Make a button toggle the expanding and collapsing of another element.</p>
1242
<pre class="prettyprint linenums">
1243
&lt;button type="button" class="btn btn-danger" data-toggle="collapse" data-target="#demo"&gt;
1244
  simple collapsible
1245
1246
1247
1248
&lt;/button&gt;

&lt;div id="demo" class="collapse in"&gt;&lt;/div&gt;
</pre>
1249

1250

1251
1252
1253
            <hr class="bs-docs-separator">


1254
            <h2>Usage</h2>
1255

1256
1257
1258
            <h3>Via data attributes</h3>
            <p>Just add <code>data-toggle="collapse"</code> and a <code>data-target</code> to element to automatically assign control of a collapsible element. The <code>data-target</code> attribute accepts a css selector to apply the collapse to. Be sure to add the class <code>collapse</code> to the collapsible element. If you'd like it to default open, add the additional class <code>in</code>.</p>
            <p>To add accordion-like group management to a collapsible control, add the data attribute <code>data-parent="#selector"</code>. Refer to the demo to see this in action.</p>
1259

1260
1261
            <h3>Via JavaScript</h3>
            <p>Enable manually with:</p>
1262
1263
            <pre class="prettyprint linenums">$(".collapse").collapse()</pre>

1264
1265
            <h3>Options</h3>
            <p>Options can be passed via data attributes or JavaScript. For data attributes, append the option name to <code>data-</code>, as in <code>data-parent=""</code>.</p>
1266
1267
1268
            <table class="table table-bordered table-striped">
              <thead>
               <tr>
1269
1270
1271
1272
                 <th style="width: 100px;">Name</th>
                 <th style="width: 50px;">type</th>
                 <th style="width: 50px;">default</th>
                 <th>description</th>
1273
1274
1275
1276
               </tr>
              </thead>
              <tbody>
               <tr>
1277
1278
                 <td>parent</td>
                 <td>selector</td>
1279
                 <td>false</td>
1280
                 <td>If selector then all collapsible elements under the specified parent will be closed when this collapsible item is shown. (similar to traditional accordion behavior)</td>
1281
1282
               </tr>
               <tr>
1283
1284
                 <td>toggle</td>
                 <td>boolean</td>
1285
                 <td>true</td>
1286
                 <td>Toggles the collapsible element on invocation</td>
1287
1288
1289
1290
1291
               </tr>
              </tbody>
            </table>


1292
1293
1294
            <h3>Methods</h3>
            <h4>.collapse(options)</h4>
            <p>Activates your content as a collapsible element. Accepts an optional options <code>object</code>.
1295
1296
<pre class="prettyprint linenums">
$('#myCollapsible').collapse({
Jacob Thornton's avatar
Jacob Thornton committed
1297
  toggle: false
1298
1299
})
</pre>
1300
            <h4>.collapse('toggle')</h4>
1301
            <p>Toggles a collapsible element to shown or hidden.</p>
1302
            <h4>.collapse('show')</h4>
1303
            <p>Shows a collapsible element.</p>
1304
            <h4>.collapse('hide')</h4>
1305
            <p>Hides a collapsible element.</p>
1306

1307
1308
            <h3>Events</h3>
            <p>Bootstrap's collapse class exposes a few events for hooking into collapse functionality.</p>
1309
1310
1311
            <table class="table table-bordered table-striped">
              <thead>
               <tr>
1312
1313
                 <th style="width: 150px;">Event</th>
                 <th>Description</th>
1314
1315
1316
1317
               </tr>
              </thead>
              <tbody>
               <tr>
1318
1319
                 <td>show</td>
                 <td>This event fires immediately when the <code>show</code> instance method is called.</td>
1320
1321
               </tr>
               <tr>
1322
1323
                 <td>shown</td>
                 <td>This event is fired when a collapse element has been made visible to the user (will wait for css transitions to complete).</td>
1324
1325
               </tr>
               <tr>
1326
                 <td>hide</td>
1327
                 <td>
1328
                  This event is fired immediately when the <code>hide</code> method has been called.
1329
1330
1331
                 </td>
               </tr>
               <tr>
1332
1333
                 <td>hidden</td>
                 <td>This event is fired when a collapse element has been hidden from the user (will wait for css transitions to complete).</td>
1334
1335
1336
               </tr>
              </tbody>
            </table>
1337
1338
<pre class="prettyprint linenums">
$('#myCollapsible').on('hidden', function () {
1339
  // do something…
1340
})</pre>
1341
          </section>
1342
1343
1344



1345
1346
1347
1348
           <!-- Carousel
          ================================================== -->
          <section id="carousel">
            <div class="page-header">
1349
              <h1>Carousel <small>bootstrap-carousel.js</small></h1>
1350
            </div>
1351

1352
1353
            <h2>Example carousel</h2>
            <p>The slideshow below shows a generic plugin and component for cycling through elements like a carousel.</p>
1354
1355
            <div class="bs-docs-example">
              <div id="myCarousel" class="carousel slide">
fat's avatar
fat committed
1356
1357
1358
1359
1360
                <ol class="carousel-indicators">
                  <li class="active"></li>
                  <li></li>
                  <li></li>
                </ol>
1361
1362
1363
1364
                <div class="carousel-inner">
                  <div class="item active">
                    <img src="assets/img/bootstrap-mdo-sfmoma-01.jpg" alt="">
                    <div class="carousel-caption">
1365
                      <h3>First slide label</h3>
1366
                      <p>Nulla vitae elit libero, a pharetra augue. Maecenas faucibus mollis interdum. Cum sociis natoque penatibus et magnis dis parturient montes.</p>
1367
                    </div>
1368
                  </div>
1369
1370
1371
                  <div class="item">
                    <img src="assets/img/bootstrap-mdo-sfmoma-02.jpg" alt="">
                    <div class="carousel-caption">
1372
                      <h3>Second slide label</h3>
1373
                      <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean lacinia bibendum nulla sed consectetur. Nullam quis risus eget urna mollis ornare.</p>
1374
                    </div>
1375
                  </div>
1376
1377
1378
                  <div class="item">
                    <img src="assets/img/bootstrap-mdo-sfmoma-03.jpg" alt="">
                    <div class="carousel-caption">
1379
                      <h3>Third slide label</h3>
1380
                      <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Integer posuere erat a ante venenatis dapibus posuere velit aliquet.</p>
1381
                    </div>
1382
                  </div>
1383
                </div>
Mark Otto's avatar
Mark Otto committed
1384
1385
1386
1387
1388
1389
                <a class="left carousel-control" href="#myCarousel" data-slide="prev">
                  <span class="control">&lsaquo;</span>
                </a>
                <a class="right carousel-control" href="#myCarousel" data-slide="next">
                  <span class="control">&rsaquo;</span>
                </a>
1390
              </div>
1391
            </div>{{! /example }}
1392
1393
<pre class="prettyprint linenums">
&lt;div id="myCarousel" class="carousel slide"&gt;
1394
  &lt;!-- Carousel items --&gt;
1395
1396
1397
1398
1399
  &lt;div class="carousel-inner"&gt;
    &lt;div class="active item"&gt;&lt;/div&gt;
    &lt;div class="item"&gt;&lt;/div&gt;
    &lt;div class="item"&gt;&lt;/div&gt;
  &lt;/div&gt;
1400
  &lt;!-- Carousel nav --&gt;
1401
1402
1403
1404
  &lt;a class="carousel-control left" href="#myCarousel" data-slide="prev"&gt;&amp;lsaquo;&lt;/a&gt;
  &lt;a class="carousel-control right" href="#myCarousel" data-slide="next"&gt;&amp;rsaquo;&lt;/a&gt;
&lt;/div&gt;
</pre>
1405

1406
            <div class="alert alert-warning">
1407
1408
              <strong>Heads up!</strong>
              When implementing this carousel, remove the images we have provided and replace them with your own.
1409
            </div>
1410
1411


1412
1413
1414
            <hr class="bs-docs-separator">


1415
            <h2>Usage</h2>
1416

1417
1418
            <h3>Via data attributes</h3>
            <p>...</p>
1419

1420
1421
            <h3>Via JavaScript</h3>
            <p>Call carousel manually with:</p>
1422
1423
            <pre class="prettyprint linenums">$('.carousel').carousel()</pre>

1424
1425
            <h3>Options</h3>
            <p>Options can be passed via data attributes or JavaScript. For data attributes, append the option name to <code>data-</code>, as in <code>data-interval=""</code>.</p>
1426
1427
1428
            <table class="table table-bordered table-striped">
              <thead>
               <tr>
1429
1430
1431
1432
                 <th style="width: 100px;">Name</th>
                 <th style="width: 50px;">type</th>
                 <th style="width: 50px;">default</th>
                 <th>description</th>
1433
1434
1435
1436
               </tr>
              </thead>
              <tbody>
               <tr>
1437
1438
                 <td>interval</td>
                 <td>number</td>
1439
                 <td>5000</td>
1440
                 <td>The amount of time to delay between automatically cycling an item. If false, carousel will not automatically cycle.</td>
1441
1442
               </tr>
               <tr>
1443
1444
                 <td>pause</td>
                 <td>string</td>
1445
                 <td>"hover"</td>
1446
                 <td>Pauses the cycling of the carousel on mouseenter and resumes the cycling of the carousel on mouseleave.</td>
1447
1448
1449
1450
               </tr>
              </tbody>
            </table>

1451
1452
1453
            <h3>Methods</h3>
            <h4>.carousel(options)</h4>
            <p>Initializes the carousel with an optional options <code>object</code> and starts cycling through items.</p>
1454
<pre class="prettyprint linenums">
1455
$('.carousel').carousel({
Jacob Thornton's avatar
Jacob Thornton committed
1456
  interval: 2000
1457
1458
})
</pre>
1459
            <h4>.carousel('cycle')</h4>
1460
            <p>Cycles through the carousel items from left to right.</p>
1461
            <h4>.carousel('pause')</h4>
1462
            <p>Stops the carousel from cycling through items.</p>
1463
            <h4>.carousel(number)</h4>
1464
            <p>Cycles the carousel to a particular frame (0 based, similar to an array).</p>
1465
            <h4>.carousel('prev')</h4>
1466
            <p>Cycles to the previous item.</p>
1467
            <h4>.carousel('next')</h4>
1468
            <p>Cycles to the next item.</p>
1469

1470
1471
            <h3>Events</h3>
            <p>Bootstrap's carousel class exposes two events for hooking into carousel functionality.</p>
1472
1473
1474
            <table class="table table-bordered table-striped">
              <thead>
               <tr>
1475
1476
                 <th style="width: 150px;">Event</th>
                 <th>Description</th>
1477
1478
1479
1480
               </tr>
              </thead>
              <tbody>
               <tr>
1481
1482
                 <td>slide</td>
                 <td>This event fires immediately when the <code>slide</code> instance method is invoked.</td>
1483
1484
               </tr>
               <tr>
1485
1486
                 <td>slid</td>
                 <td>This event is fired when the carousel has completed its slide transition.</td>
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
               </tr>
              </tbody>
            </table>
          </section>



          <!-- Typeahead
          ================================================== -->
          <section id="typeahead">
            <div class="page-header">
1498
              <h1>Typeahead <small>bootstrap-typeahead.js</small></h1>
1499
            </div>
1500
1501


1502
1503
            <h2>Example</h2>
            <p>A basic, easily extended plugin for quickly creating elegant typeaheads with any form text input.</p>
1504
1505
1506
1507
1508
1509
1510
1511
1512
            <div class="bs-docs-example" style="background-color: #f5f5f5;">
              <input type="text" class="span3" style="margin: 0 auto;" data-provide="typeahead" data-items="4" data-source='["Alabama","Alaska","Arizona","Arkansas","California","Colorado","Connecticut","Delaware","Florida","Georgia","Hawaii","Idaho","Illinois","Indiana","Iowa","Kansas","Kentucky","Louisiana","Maine","Maryland","Massachusetts","Michigan","Minnesota","Mississippi","Missouri","Montana","Nebraska","Nevada","New Hampshire","New Jersey","New Mexico","New York","North Dakota","North Carolina","Ohio","Oklahoma","Oregon","Pennsylvania","Rhode Island","South Carolina","South Dakota","Tennessee","Texas","Utah","Vermont","Virginia","Washington","West Virginia","Wisconsin","Wyoming"]'>
            </div>{{! /example }}
            <pre class="prettyprint linenums">&lt;input type="text" data-provide="typeahead"&gt;</pre>


            <hr class="bs-docs-separator">


1513
            <h2>Usage</h2>
1514

1515
1516
            <h3>Via data attributes</h3>
            <p>Add data attributes to register an element with typeahead functionality as shown in the example above.</p>
1517

1518
1519
            <h3>Via JavaScript</h3>
            <p>Call the typeahead manually with:</p>
1520
1521
            <pre class="prettyprint linenums">$('.typeahead').typeahead()</pre>

1522
1523
            <h3>Options</h3>
            <p>Options can be passed via data attributes or JavaScript. For data attributes, append the option name to <code>data-</code>, as in <code>data-source=""</code>.</p>
1524
1525
1526
            <table class="table table-bordered table-striped">
              <thead>
               <tr>
1527
1528
1529
1530
                 <th style="width: 100px;">Name</th>
                 <th style="width: 50px;">type</th>
                 <th style="width: 100px;">default</th>
                 <th>description</th>
1531
1532
1533
1534
               </tr>
              </thead>
              <tbody>
                <tr>
1535
1536
                 <td>source</td>
                 <td>array, function</td>
1537
                 <td>[ ]</td>
1538
                 <td>The data source to query against. May be an array of strings or a function. The function is passed two arguments, the <code>query</code> value in the input field and the <code>process</code> callback. The function may be used synchronously by returning the data source directly or asynchronously via the <code>process</code> callback's single argument.</td>
1539
1540
               </tr>
               <tr>
1541
1542
                 <td>items</td>
                 <td>number</td>
1543
                 <td>8</td>
1544
                 <td>The max number of items to display in the dropdown.</td>
1545
1546
               </tr>
               <tr>
1547
1548
1549
1550
                 <td>minLength</td>
                 <td>number</td>
                 <td>1</td>
                 <td>The minimum character length needed before triggering autocomplete suggestions</td>
1551
1552
               </tr>
               <tr>
1553
1554
1555
1556
                 <td>matcher</td>
                 <td>function</td>
                 <td>case insensitive</td>
                 <td>The method used to determine if a query matches an item. Accepts a single argument, the <code>item</code> against which to test the query. Access the current query with <code>this.query</code>. Return a boolean <code>true</code> if query is a match.</td>
1557
1558
               </tr>
               <tr>
1559
1560
1561
1562
                 <td>sorter</td>
                 <td>function</td>
                 <td>exact match,<br> case sensitive,<br> case insensitive</td>
                 <td>Method used to sort autocomplete results. Accepts a single argument <code>items</code> and has the scope of the typeahead instance. Reference the current query with <code>this.query</code>.</td>
1563
               </tr>
1564
               <tr>
1565
1566
1567
1568
                 <td>updater</td>
                 <td>function</td>
                 <td>returns selected item</td>
                 <td>The method used to return selected item. Accepts a single argument, the <code>item</code> and has the scope of the typeahead instance.</td>
1569
               </tr>
1570
               <tr>
1571
1572
1573
1574
                 <td>highlighter</td>
                 <td>function</td>
                 <td>highlights all default matches</td>
                 <td>Method used to highlight autocomplete results. Accepts a single argument <code>item</code> and has the scope of the typeahead instance. Should return html.</td>
1575
1576
1577
1578
               </tr>
              </tbody>
            </table>

1579
1580
1581
            <h3>Methods</h3>
            <h4>.typeahead(options)</h4>
            <p>Initializes an input with a typeahead.</p>
1582
1583
1584
1585
1586
1587
1588
1589
          </section>



          <!-- Affix
          ================================================== -->
          <section id="affix">
            <div class="page-header">
1590
              <h1>Affix <small>bootstrap-affix.js</small></h1>
1591
            </div>
1592

1593
1594
            <h2>Example</h2>
            <p>The subnavigation on the left is a live demo of the affix plugin.</p>
1595

1596
            <hr class="bs-docs-separator">
1597

1598
            <h2>Usage</h2>
Jacob Thornton's avatar
Jacob Thornton committed
1599

1600
1601
            <h3>Via data attributes</h3>
            <p>To easily add affix behavior to any element, just add <code>data-spy="affix"</code> to the element you want to spy on. Then use offsets to define when to toggle the pinning of an element on and off.</p>
Jacob Thornton's avatar
Jacob Thornton committed
1602

1603
            <pre class="prettyprint linenums">&lt;div data-spy="affix" data-offset-top="200"&gt;...&lt;/div&gt;</pre>
Jacob Thornton's avatar
Jacob Thornton committed
1604

1605
            <div class="alert alert-info">
1606
1607
              <strong>Heads up!</strong>
              You must manage the position of a pinned element and the behavior of its immediate parent. Position is controlled by <code>affix</code>, <code>affix-top</code>, and <code>affix-bottom</code>. Remember to check for a potentially collapsed parent when the affix kicks in as it's removing content from the normal flow of the page.
1608
            </div>
Jacob Thornton's avatar
Jacob Thornton committed
1609

1610
1611
            <h3>Via JavaScript</h3>
            <p>Call the affix plugin via JavaScript:</p>
1612
            <pre class="prettyprint linenums">$('#navbar').affix()</pre>
Jacob Thornton's avatar
Jacob Thornton committed
1613

1614
            <h3>Methods</h3>
1615
            <h4>.affix('refresh')</h4>
1616
            <p>When using affix in conjunction with adding or removing of elements from the DOM, you'll want to call the refresh method:</p>
1617
<pre class="prettyprint linenums">
Jacob Thornton's avatar
Jacob Thornton committed
1618
1619
1620
$('[data-spy="affix"]').each(function () {
  $(this).affix('refresh')
});
1621
</pre>
1622
1623
          <h3>Options</h3>
          <p>Options can be passed via data attributes or JavaScript. For data attributes, append the option name to <code>data-</code>, as in <code>data-offset-top="200"</code>.</p>
1624

1625
1626
1627
          <table class="table table-bordered table-striped">
            <thead>
             <tr>
1628
1629
1630
1631
               <th style="width: 100px;">Name</th>
               <th style="width: 100px;">type</th>
               <th style="width: 50px;">default</th>
               <th>description</th>
1632
1633
1634
1635
             </tr>
            </thead>
            <tbody>
             <tr>
1636
1637
1638
1639
               <td>offset</td>
               <td>number | function | object</td>
               <td>10</td>
               <td>Pixels to offset from screen when calculating position of scroll. If a single number is provided, the offset will be applied in both top and left directions. To listen for a single direction, or multiple unique offsets, just provide an object <code>offset: { x: 10 }</code>. Use a function when you need to dynamically provide an offset (useful for some responsive designs).</td>
1640
1641
1642
1643
             </tr>
            </tbody>
          </table>
        </section>
1644
1645


1646

1647
1648
      </div>{{! /span9 }}
    </div>{{! row}}
1649

1650
  </div>{{! /.container }}
For faster browsing, not all history is shown. View entire blame