2011-06-07 19:10:59 +00:00
<!doctype html>
< html lang = "en" >
< head >
< meta charset = "utf-8" >
2012-08-12 00:25:55 +00:00
< title > reveal.js - The HTML Presentation Framework< / title >
2011-12-31 06:33:19 +00:00
2012-08-08 05:14:12 +00:00
< meta name = "description" content = "A framework for easily creating beautiful presentations using HTML" >
2011-12-31 06:33:19 +00:00
< meta name = "author" content = "Hakim El Hattab" >
2012-05-07 02:05:58 +00:00
< meta name = "apple-mobile-web-app-capable" content = "yes" / >
< meta name = "apple-mobile-web-app-status-bar-style" content = "black-translucent" / >
2011-06-07 19:10:59 +00:00
2011-12-05 02:07:33 +00:00
< link href = 'http://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic' rel = 'stylesheet' type = 'text/css' >
2011-06-07 19:10:59 +00:00
2012-09-28 13:28:26 +00:00
< link rel = "stylesheet" href = "css/reveal.css" >
2012-08-30 04:59:51 +00:00
< link rel = "stylesheet" href = "css/theme/default.css" id = "theme" >
2012-08-08 05:14:12 +00:00
<!-- For syntax highlighting -->
2012-07-10 01:00:51 +00:00
< link rel = "stylesheet" href = "lib/css/zenburn.css" >
2012-08-04 01:49:29 +00:00
2012-09-30 22:14:27 +00:00
<!-- If the query includes 'print - pdf', use the PDF print sheet -->
2012-08-04 19:45:13 +00:00
< script >
2012-08-12 00:25:55 +00:00
document.write( '< link rel = "stylesheet" href = "css/print/' + ( window.location.search.match( /print-pdf/gi ) ? 'pdf' : 'paper' ) + '.css" type = "text/css" media = "print" > ' );
2012-08-04 19:45:13 +00:00
< / script >
2012-08-04 01:49:29 +00:00
<!-- [if lt IE 9]>
< script src = "lib/js/html5shiv.js" > < / script >
<![endif]-->
2011-06-07 19:10:59 +00:00
< / head >
< body >
2012-06-03 21:30:37 +00:00
< div class = "reveal" >
2012-04-04 04:59:35 +00:00
2011-12-27 05:29:00 +00:00
<!-- Any section element inside of this container is displayed as a slide -->
< div class = "slides" >
2012-10-08 13:15:36 +00:00
2011-12-27 05:29:00 +00:00
< section >
< h1 > Reveal.js< / h1 >
2012-08-08 05:14:12 +00:00
< h3 > HTML Presentations Made Easy< / h3 >
2011-12-27 05:29:00 +00:00
< / section >
2011-06-07 19:10:59 +00:00
< section >
2011-12-27 05:29:00 +00:00
< h2 > Heads Up< / h2 >
2011-06-07 19:10:59 +00:00
< p >
2012-08-08 05:14:12 +00:00
reveal.js is a framework for easily creating beautiful presentations using HTML. You'll need a browser with
2011-12-27 05:29:00 +00:00
support for CSS 3D transforms to see it in its full glory.
< / p >
< p >
< i > < small > - < a href = "http://hakim.se" > Hakim El Hattab< / a > / < a href = "http://twitter.com/hakimel" > @hakimel< / a > < / small > < / i >
2011-06-07 19:10:59 +00:00
< / p >
2012-06-08 03:21:14 +00:00
< aside class = "notes" >
Oh hey, these are some notes. They'll be hidden in your presentation, but you can see them if you run the speaker notes server.
< / aside >
2011-06-07 19:10:59 +00:00
< / section >
2011-12-27 05:29:00 +00:00
<!-- Example of nested vertical slides -->
2011-06-07 19:10:59 +00:00
< section >
2011-12-27 05:29:00 +00:00
< section >
< h2 > Vertical Slides< / h2 >
< p >
2012-08-04 18:09:06 +00:00
Slides can be nested inside of other slides,
2011-12-27 05:29:00 +00:00
try pressing < a href = "#/2/1" > down< / a > .
< / p >
< a href = "#/2/1" class = "image" >
2012-08-06 02:52:36 +00:00
< img width = "178" height = "238" src = "https://s3.amazonaws.com/hakim-static/reveal-js/arrow.png" alt = "Down arrow" >
2011-12-27 05:29:00 +00:00
< / a >
< / section >
< section >
< h2 > Basement Level 1< / h2 >
< p > Press down or up to navigate.< / p >
< / section >
< section >
< h2 > Basement Level 2< / h2 >
< p > Cornify< / p >
2012-01-03 08:24:09 +00:00
< a class = "test" href = "http://cornify.com" >
2012-08-06 02:52:36 +00:00
< img width = "280" height = "326" src = "https://s3.amazonaws.com/hakim-static/reveal-js/cornify.gif" alt = "Unicorn" >
2012-01-03 08:24:09 +00:00
< / a >
2011-12-27 05:29:00 +00:00
< / section >
< section >
< h2 > Basement Level 3< / h2 >
< p > That's it, time to go back up.< / p >
< a href = "#/2" class = "image" >
2012-08-06 02:52:36 +00:00
< img width = "178" height = "238" src = "https://s3.amazonaws.com/hakim-static/reveal-js/arrow.png" alt = "Up arrow" style = "-webkit-transform: rotate(180deg);" >
2011-12-27 05:29:00 +00:00
< / a >
< / section >
2011-06-07 19:10:59 +00:00
< / section >
2011-12-27 05:29:00 +00:00
2011-06-07 19:10:59 +00:00
< section >
2012-10-09 04:06:34 +00:00
< h2 > Point of View< / h2 >
2011-12-27 05:29:00 +00:00
< p >
2012-10-09 13:22:16 +00:00
Press < strong > ESC< / strong > to enter the slide overview. Hold down alt and click on any element to zoom in on it using < a href = "http://lab.hakim.se/zoom-js" > zoom.js< / a > . Alt + click anywhere to zoom back out.
2011-12-27 05:29:00 +00:00
< / p >
2011-12-27 05:57:37 +00:00
< / section >
2012-09-10 02:04:50 +00:00
< section >
< h2 > rvl.io< / h2 >
< p >
If you don't like writing slides in HTML you can use the online editor < a href = "http://www.rvl.io" target = "_blank" > rvl.io< / a > .
< / p >
< / section >
2012-06-02 21:58:09 +00:00
< section >
< h2 > Works in Mobile Safari< / h2 >
< p >
2012-09-30 22:14:27 +00:00
Try it out! You can swipe through the slides and pinch your way to the overview.
2012-06-02 21:58:09 +00:00
< / p >
< / section >
2011-06-07 19:10:59 +00:00
< section >
2011-12-27 05:29:00 +00:00
< h2 > Marvelous Unordered List< / h2 >
< ul >
< li > No order here< / li >
< li > Or here< / li >
< li > Or here< / li >
< li > Or here< / li >
< / ul >
2011-06-07 19:10:59 +00:00
< / section >
2011-12-27 05:29:00 +00:00
< section >
< h2 > Fantastic Ordered List< / h2 >
< ol >
< li > One is smaller than...< / li >
< li > Two is smaller than...< / li >
< li > Three!< / li >
< / ol >
< / section >
2011-12-05 02:07:33 +00:00
2012-07-31 05:35:16 +00:00
< section data-markdown >
2012-10-08 13:15:36 +00:00
< script type = "text/template" >
## Markdown support
For those of you who like that sort of thing. Instructions and a bit more info available [here](https://github.com/hakimel/reveal.js#markdown).
2012-07-31 05:35:16 +00:00
2012-10-08 13:15:36 +00:00
< section data-markdown >
## Markdown support
2012-08-01 03:50:41 +00:00
2012-10-08 13:15:36 +00:00
For those of you who like that sort of thing.
Instructions and a bit more info available [here](https://github.com/hakimel/reveal.js#markdown).
< / section >
< / script >
2012-07-31 05:35:16 +00:00
< / section >
2012-10-10 13:32:57 +00:00
< section id = "transitions" >
2012-07-31 05:35:16 +00:00
< h2 > Transition Styles< / h2 >
< p >
2012-08-30 05:32:18 +00:00
You can select from different transitions, like: < br >
2012-10-10 13:32:57 +00:00
< a href = "?transition=cube#/transitions" > Cube< / a > -
< a href = "?transition=page#/transitions" > Page< / a > -
< a href = "?transition=concave#/transitions" > Concave< / a > -
2012-10-13 14:28:34 +00:00
< a href = "?transition=zoom#/transitions" > Zoom< / a > -
2012-10-10 13:32:57 +00:00
< a href = "?transition=linear#/transitions" > Linear< / a > -
2012-10-13 14:28:34 +00:00
< a href = "?transition=none#/transitions" > None< / a > -
2012-10-10 13:32:57 +00:00
< a href = "?#/transitions" > Default< / a >
2012-07-31 05:35:16 +00:00
< / p >
< / section >
2012-10-10 10:49:05 +00:00
< section id = "themes" >
2012-08-30 04:59:51 +00:00
< h2 > Themes< / h2 >
< p >
Reveal.js comes with a few themes built in: < br >
2012-10-10 10:49:05 +00:00
< a href = "?theme=sky#/themes" > Sky< / a > -
< a href = "?theme=beige#/themes" > Beige< / a > -
< a href = "?theme=simple#/themes" > Simple< / a > -
< a href = "?theme=serif#/themes" > Serif< / a > -
< a href = "?#/themes" > Default< / a >
2012-08-30 04:59:51 +00:00
< / p >
< p >
< small >
* Theme demos are loaded after the presentation which leads to flicker. In production you should load your theme in the < code > < head> < / code > using a < code > < link> < / code > .
< / small >
< / p >
< / section >
2012-04-04 04:59:35 +00:00
< section >
< section data-state = "alert" >
< h2 > Global State< / h2 >
< p >
Set < code > data-state="something"< / code > on a slide and < code > "something"< / code >
2012-08-09 03:00:40 +00:00
will be added as a class to the document element when the slide is open. This lets you
2012-04-04 04:59:35 +00:00
apply broader style changes, like switching the background.
< / p >
< a href = "#/7/1" class = "image" >
2012-08-06 02:52:36 +00:00
< img width = "178" height = "238" src = "https://s3.amazonaws.com/hakim-static/reveal-js/arrow.png" alt = "Down arrow" >
2012-04-04 04:59:35 +00:00
< / a >
< / section >
< section data-state = "blackout" >
< h2 > "blackout"< / h2 >
< a href = "#/7/2" class = "image" >
2012-08-06 02:52:36 +00:00
< img width = "178" height = "238" src = "https://s3.amazonaws.com/hakim-static/reveal-js/arrow.png" alt = "Down arrow" >
2012-04-04 04:59:35 +00:00
< / a >
< / section >
< section data-state = "soothe" >
< h2 > "soothe"< / h2 >
< a href = "#/7/0" class = "image" >
2012-08-06 02:52:36 +00:00
< img width = "178" height = "238" src = "https://s3.amazonaws.com/hakim-static/reveal-js/arrow.png" alt = "Up arrow" style = "-webkit-transform: rotate(180deg);" >
2012-04-04 04:59:35 +00:00
< / a >
< / section >
2012-03-30 04:13:45 +00:00
< / section >
2012-04-30 14:07:23 +00:00
< section data-state = "customevent" >
< h2 > Custom Events< / h2 >
< p >
Additionally custom events can be triggered on a per slide basis by binding to the < code > data-state< / code > name.
< / p >
2012-05-04 04:01:20 +00:00
< pre > < code contenteditable style = "font-size: 18px; margin-top: 20px;" > Reveal.addEventListener( 'customevent', function() {
2012-07-13 03:08:21 +00:00
console.log( '"customevent" has fired' );
2012-05-01 12:52:56 +00:00
} );
< / code > < / pre >
2012-04-30 14:07:23 +00:00
< / section >
2011-12-27 05:29:00 +00:00
< section >
< h2 > Clever Quotes< / h2 >
< p >
These guys come in two forms, inline: < q cite = "http://searchservervirtualization.techtarget.com/definition/Our-Favorite-Technology-Quotations" >
The nice thing about standards is that there are so many to choose from< / q > and block:
< / p >
< blockquote cite = "http://searchservervirtualization.techtarget.com/definition/Our-Favorite-Technology-Quotations" >
For years there has been a theory that millions of monkeys typing at random on millions of typewriters would
reproduce the entire works of Shakespeare. The Internet has proven this theory to be untrue.
< / blockquote >
< / section >
< section >
< h2 > Pretty Code< / h2 >
< pre > < code contenteditable >
2012-05-01 12:52:56 +00:00
function linkify( selector ) {
2012-07-10 01:48:43 +00:00
if( supports3DTransforms ) {
var nodes = document.querySelectorAll( selector );
2012-08-13 01:46:06 +00:00
for( var i = 0, len = nodes.length; i < len; i++ ) {
2012-07-10 01:48:43 +00:00
var node = nodes[i];
if( !node.className ) ) {
node.className += ' roll';
}
};
}
2012-05-01 12:52:56 +00:00
}
2011-12-27 05:29:00 +00:00
< / code > < / pre >
< p > Courtesy of < a href = "http://softwaremaniacs.org/soft/highlight/en/description/" > highlight.js< / a > .< / p >
< / section >
< section >
< h2 > Intergalactic Interconnections< / h2 >
< p >
2012-08-04 19:45:13 +00:00
You can link between slides internally,
2011-12-27 05:29:00 +00:00
< a href = "#/2/3" > like this< / a > .
< / p >
< / section >
2011-12-05 02:07:33 +00:00
2011-12-27 05:29:00 +00:00
< section >
< h2 > Fragmented Views< / h2 >
< p > Hit the next arrow...< / p >
< p class = "fragment" > ... to step through ...< / p >
< ol >
< li class = "fragment" > < code > any type< / code > < / li >
< li class = "fragment" > < em > of view< / em > < / li >
< li class = "fragment" > < strong > fragments< / strong > < / li >
< / ol >
< / section >
< section >
< h2 > Spectacular image!< / h2 >
2012-10-09 04:06:34 +00:00
< a class = "image" href = "http://lab.hakim.se/meny/" target = "_blank" >
< img width = "320" height = "299" src = "http://s3.amazonaws.com/hakim-static/portfolio/images/meny.png" alt = "Meny" >
2011-12-27 05:29:00 +00:00
< / a >
< / section >
2012-08-04 20:16:23 +00:00
< section >
< h2 > Export to PDF< / h2 >
2012-08-04 22:19:50 +00:00
< p > Presentations can be < a href = "https://github.com/hakimel/reveal.js#pdf-export" > exported to PDF< / a > , below is an example that's been uploaded to SlideShare.< / p >
2012-08-13 01:46:06 +00:00
< iframe id = "slideshare" src = "http://www.slideshare.net/slideshow/embed_code/13872948" width = "455" height = "356" style = "margin:0;overflow:hidden;border:1px solid #CCC;border-width:1px 1px 0;margin-bottom:5px" allowfullscreen > < / iframe >
< script >
document.getElementById('slideshare').attributeName = 'allowfullscreen';
< / script >
2012-08-04 20:16:23 +00:00
< / section >
2012-10-08 04:08:50 +00:00
< section >
< h2 > Take a Moment< / h2 >
< p >
Press b or period on your keyboard to enter the 'paused' mode. This mode is helpful when you want to take disctracting slides off the screen
2012-10-10 09:11:52 +00:00
during a presentation.
2012-10-08 04:08:50 +00:00
< / p >
< / section >
2011-12-27 05:29:00 +00:00
< section >
< h2 > Stellar Links< / h2 >
< ul >
2012-09-17 01:50:11 +00:00
< li > < a href = "https://github.com/hakimel/reveal.js" > Source code on GitHub< / a > < / li >
< li > < a href = "http://hakim.se/projects/reveal-js" > Leave feedback on my site< / a > < / li >
2011-12-27 05:29:00 +00:00
< li > < a href = "http://twitter.com/hakimel" > Follow me on Twitter< / a > < / li >
< / ul >
< / section >
2012-09-30 22:14:27 +00:00
< section >
< h2 > It's free< / h2 >
< p >
reveal.js and < a href = "http://www.rvl.io" > rvl.io< / a > are entirely free but if you'd like to support the projects you can donate below.
Donations will go towards hosting and domain costs.
< / p >
< form action = "https://www.paypal.com/cgi-bin/webscr" method = "post" >
< input type = "hidden" name = "cmd" value = "_donations" >
< input type = "hidden" name = "business" value = "hakim.elhattab@gmail.com" >
< input type = "hidden" name = "lc" value = "US" >
< input type = "hidden" name = "item_name" value = "reveal.js / rvl.io" >
< input type = "hidden" name = "no_note" value = "0" >
< input type = "hidden" name = "currency_code" value = "USD" >
< input type = "hidden" name = "bn" value = "PP-DonationsBF:btn_donate_LG.gif:NonHostedGuest" >
< input type = "image" src = "https://www.paypalobjects.com/en_US/i/btn/btn_donate_LG.gif" border = "0" name = "submit" alt = "PayPal - The safer, easier way to pay online!" >
< / form >
< / section >
2011-12-27 05:29:00 +00:00
< section >
< h1 > THE END< / h1 >
2012-08-08 05:14:12 +00:00
< h3 > BY Hakim El Hattab / hakim.se< / h3 >
2011-12-27 05:29:00 +00:00
< / section >
2012-10-08 13:15:36 +00:00
2011-12-27 05:29:00 +00:00
< / div >
2011-06-07 19:10:59 +00:00
< / div >
2012-03-24 16:48:16 +00:00
2012-07-10 01:00:51 +00:00
< script src = "lib/js/head.min.js" > < / script >
2012-08-12 00:25:55 +00:00
< script src = "js/reveal.min.js" > < / script >
2012-07-10 00:51:04 +00:00
2011-12-05 02:07:33 +00:00
< script >
2012-08-12 00:25:55 +00:00
// Full list of configuration options available here:
// https://github.com/hakimel/reveal.js#configuration
Reveal.initialize({
controls: true,
progress: true,
history: true,
2012-10-10 13:35:13 +00:00
theme: Reveal.getQueryHash().theme, // available themes are in /css/theme
2012-10-13 14:28:34 +00:00
transition: Reveal.getQueryHash().transition || 'default', // default/cube/page/concave/zoom/linear/none
2012-08-12 00:25:55 +00:00
// Optional libraries used to extend on reveal.js
dependencies: [
{ src: 'lib/js/highlight.js', async: true, callback: function() { window.hljs.initHighlightingOnLoad(); } },
{ src: 'lib/js/classList.js', condition: function() { return !document.body.classList; } },
{ src: 'lib/js/showdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
{ src: 'lib/js/data-markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
2012-10-09 13:22:16 +00:00
{ src: 'plugin/zoom-js/zoom.js', condition: function() { return !!document.body.classList; } },
2012-09-03 08:32:31 +00:00
{ src: '/socket.io/socket.io.js', async: true, condition: function() { return window.location.host === 'localhost:1947'; } },
2012-10-08 04:08:50 +00:00
{ src: 'plugin/speakernotes/client.js', async: true, condition: function() { return window.location.host === 'localhost:1947'; } }
2012-08-12 00:25:55 +00:00
]
});
2012-10-17 21:46:43 +00:00
// Set up simple postMessage notes system.
var url = window.location.href;
if(url.indexOf('?' + 'notes' + '=') !== 'true') {
var notesPopup = window.open('notes.html');
Reveal.addEventListener('slidechanged', function(event) {
var nextindexh;
var nextindexv;
var slideElement = event.currentSlide;
if (slideElement.nextElementSibling & & slideElement.parentNode.nodeName == 'SECTION') {
nextindexh = event.indexh;
nextindexv = event.indexv + 1;
} else {
nextindexh = event.indexh + 1;
nextindexv = 0;
}
var notes = slideElement.querySelector('aside.notes');
var slideData = {
notes : notes ? notes.innerHTML : '',
indexh : event.indexh,
indexv : event.indexv,
nextindexh : nextindexh,
nextindexv : nextindexv,
markdown : notes ? typeof notes.getAttribute('data-markdown') === 'string' : false
};
notesPopup.postMessage(JSON.stringify(slideData), '*');
});
}
2012-08-04 19:53:52 +00:00
< / script >
2012-08-01 03:47:09 +00:00
2011-06-07 19:10:59 +00:00
< / body >
2012-08-04 04:33:27 +00:00
< / html >