octopress.js now almost passes JSHint (http://jshint.com). The only issues left
are due to undefined Modernizr and swfobject objects and the compressed
swfobject code at the end of the file, but those are neglectable.
| ... | ... |
@@ -1,38 +1,40 @@ |
| 1 |
-function getNav(){
|
|
| 1 |
+function getNav() {
|
|
| 2 | 2 |
var mobileNav = $('nav[role=navigation] fieldset[role=site-search]').after('<fieldset role="mobile-nav"></fieldset>').next().append('<select></select>');
|
| 3 | 3 |
mobileNav.children('select').append('<option value="">Navigate…</option>');
|
| 4 |
- $($('ul[role=main-navigation] a')).each(function(link) {
|
|
| 5 |
- mobileNav.children('select').append('<option value="'+link.href+'">• '+link.text+'</option>')
|
|
| 4 |
+ $('ul[role=main-navigation] a').each(function(link) {
|
|
| 5 |
+ mobileNav.children('select').append('<option value="'+link.href+'">• '+link.text+'</option>');
|
|
| 6 | 6 |
}); |
| 7 |
- mobileNav.children('select').bind('change', function(event){
|
|
| 7 |
+ mobileNav.children('select').bind('change', function(event) {
|
|
| 8 | 8 |
if (event.target.value) window.location.href = event.target.value; |
| 9 | 9 |
}); |
| 10 | 10 |
} |
| 11 |
+ |
|
| 11 | 12 |
function addSidebarToggler() {
|
| 12 | 13 |
$('#content').append('<span class="toggle-sidebar"></span>');
|
| 13 |
- $('.toggle-sidebar').bind('click', function(e){
|
|
| 14 |
+ $('.toggle-sidebar').bind('click', function(e) {
|
|
| 14 | 15 |
e.preventDefault(); |
| 15 |
- if($('body').hasClass('collapse-sidebar')){
|
|
| 16 |
+ if ($('body').hasClass('collapse-sidebar')) {
|
|
| 16 | 17 |
$('body').removeClass('collapse-sidebar');
|
| 17 | 18 |
} else {
|
| 18 | 19 |
$('body').addClass('collapse-sidebar');
|
| 19 | 20 |
} |
| 20 | 21 |
}); |
| 21 |
- sections = $('aside[role=sidebar] > section')
|
|
| 22 |
- if(sections.length > 1){
|
|
| 22 |
+ var sections = $('aside[role=sidebar] > section');
|
|
| 23 |
+ if (sections.length > 1) {
|
|
| 23 | 24 |
sections.each(function(section, index){
|
| 24 |
- if ((sections.length >= 3) && index % 3 == 0) {
|
|
| 25 |
+ if ((sections.length >= 3) && index % 3 === 0) {
|
|
| 25 | 26 |
$(section).addClass("first");
|
| 26 | 27 |
} |
| 27 |
- count = ((index +1) % 2) ? "odd" : "even"; |
|
| 28 |
+ var count = ((index +1) % 2) ? "odd" : "even"; |
|
| 28 | 29 |
$(section).addClass(count); |
| 29 | 30 |
}); |
| 30 | 31 |
} |
| 31 |
- if(sections.length >= 3){ $('aside[role=sidebar]').addClass('thirds') }
|
|
| 32 |
+ if (sections.length >= 3){ $('aside[role=sidebar]').addClass('thirds'); }
|
|
| 32 | 33 |
} |
| 34 |
+ |
|
| 33 | 35 |
function testFeatures() {
|
| 34 | 36 |
var features = ['maskImage']; |
| 35 |
- $(features).map(function(feature){
|
|
| 37 |
+ $(features).map(function(feature) {
|
|
| 36 | 38 |
if (Modernizr.testAllProps(feature)) {
|
| 37 | 39 |
$('html').addClass(feature);
|
| 38 | 40 |
} else {
|
| ... | ... |
@@ -46,59 +48,60 @@ function testFeatures() {
|
| 46 | 46 |
} |
| 47 | 47 |
} |
| 48 | 48 |
|
| 49 |
-function addCodeLineNumbers(){
|
|
| 50 |
- if (navigator.appName == 'Microsoft Internet Explorer') { return }
|
|
| 51 |
- $('div.gist-highlight').each(function(code){
|
|
| 52 |
- var tableStart = '<table cellpadding="0" cellspacing="0"><tbody><tr><td class="gutter">'; |
|
| 53 |
- var lineNumbers = '<pre class="line-numbers">'; |
|
| 54 |
- var tableMiddle = '</pre></td><td class="code" width="100%">'; |
|
| 55 |
- var tableEnd = '</td></tr></tbody></table>'; |
|
| 56 |
- var count = $('div.line', code).length;
|
|
| 57 |
- for (i=1;i<=count; i++){
|
|
| 58 |
- lineNumbers += '<span class="line">'+i+'</span>\n'; |
|
| 49 |
+function addCodeLineNumbers() {
|
|
| 50 |
+ if (navigator.appName == 'Microsoft Internet Explorer') { return; }
|
|
| 51 |
+ $('div.gist-highlight').each(function(code) {
|
|
| 52 |
+ var tableStart = '<table><tbody><tr><td class="gutter">', |
|
| 53 |
+ lineNumbers = '<pre class="line-numbers">', |
|
| 54 |
+ tableMiddle = '</pre></td><td class="code">', |
|
| 55 |
+ tableEnd = '</td></tr></tbody></table>', |
|
| 56 |
+ count = $('span.line', code).length;
|
|
| 57 |
+ for (var i=1;i<=count; i++) {
|
|
| 58 |
+ lineNumbers += '<span class="line-number">'+i+'</span>\n'; |
|
| 59 | 59 |
} |
| 60 |
- table = tableStart + lineNumbers + tableMiddle + '<pre>'+$('pre', code).html()+'</pre>' + tableEnd;
|
|
| 60 |
+ var table = tableStart + lineNumbers + tableMiddle + '<pre>'+$('pre', code).html()+'</pre>' + tableEnd;
|
|
| 61 | 61 |
$(code).html(table); |
| 62 | 62 |
}); |
| 63 | 63 |
} |
| 64 | 64 |
|
| 65 | 65 |
function flashVideoFallback(){
|
| 66 | 66 |
var flashplayerlocation = "/assets/jwplayer/player.swf", |
| 67 |
- flashplayerskin = "/assets/jwplayer/glow/glow.xml"; |
|
| 67 |
+ flashplayerskin = "/assets/jwplayer/glow/glow.xml"; |
|
| 68 | 68 |
$('video').each(function(video){
|
| 69 | 69 |
video = $(video); |
| 70 |
- if(!Modernizr.video.h264 && swfobject.getFlashPlayerVersion() || window.location.hash.indexOf("flash-test") != -1){
|
|
| 71 |
- video.children('source[src$=mp4]').first().map(function(source){;
|
|
| 70 |
+ if (!Modernizr.video.h264 && swfobject.getFlashPlayerVersion() || window.location.hash.indexOf("flash-test") != -1){
|
|
| 71 |
+ video.children('source[src$=mp4]').first().map(function(source){
|
|
| 72 | 72 |
var src = $(source).attr('src'),
|
| 73 |
- id = 'video_'+Math.round(1 + Math.random()*(100000)), |
|
| 74 |
- width = video.attr('width'),
|
|
| 75 |
- height = parseInt(video.attr('height')) + 30;
|
|
| 76 |
- video.after('<div class="flash-video"><div><div id='+id+'>');
|
|
| 73 |
+ id = 'video_'+Math.round(1 + Math.random()*(100000)), |
|
| 74 |
+ width = video.attr('width'),
|
|
| 75 |
+ height = parseInt(video.attr('height'), 10) + 30;
|
|
| 76 |
+ video.after('<div class="flash-video"><div><div id='+id+'>');
|
|
| 77 | 77 |
swfobject.embedSWF(flashplayerlocation, id, width, height + 30, "9.0.0", |
| 78 | 78 |
{ file : src, image : video.attr('poster'), skin : flashplayerskin } ,
|
| 79 |
- { movie : src, wmode : "opaque", allowfullscreen : "true" });
|
|
| 79 |
+ { movie : src, wmode : "opaque", allowfullscreen : "true" }
|
|
| 80 |
+ ); |
|
| 80 | 81 |
}); |
| 81 | 82 |
video.remove(); |
| 82 | 83 |
} |
| 83 | 84 |
}); |
| 84 | 85 |
} |
| 85 | 86 |
|
| 86 |
-function wrapFlashVideos(){
|
|
| 87 |
- $('object').each(function(object){
|
|
| 87 |
+function wrapFlashVideos() {
|
|
| 88 |
+ $('object').each(function(object) {
|
|
| 88 | 89 |
object = $(object); |
| 89 |
- if(object.children('param[name=movie]')){
|
|
| 90 |
+ if (object.children('param[name=movie]')) {
|
|
| 90 | 91 |
var wrapper = object.before('<div class="flash-video"><div>').previous();
|
| 91 | 92 |
$(wrapper).children().append(object); |
| 92 | 93 |
} |
| 93 | 94 |
}); |
| 94 |
- $('iframe[src*=vimeo],iframe[src*=youtube]').each(function(iframe){
|
|
| 95 |
+ $('iframe[src*=vimeo],iframe[src*=youtube]').each(function(iframe) {
|
|
| 95 | 96 |
iframe = $(iframe); |
| 96 | 97 |
var wrapper = iframe.before('<div class="flash-video"><div>').previous();
|
| 97 | 98 |
$(wrapper).children().append(iframe); |
| 98 | 99 |
}); |
| 99 | 100 |
} |
| 100 | 101 |
|
| 101 |
-$.domReady(function(){
|
|
| 102 |
+$.domReady(function() {
|
|
| 102 | 103 |
testFeatures(); |
| 103 | 104 |
wrapFlashVideos(); |
| 104 | 105 |
flashVideoFallback(); |
| ... | ... |
@@ -113,17 +116,17 @@ $.domReady(function(){
|
| 113 | 113 |
// Source url: https://gist.github.com/901295 |
| 114 | 114 |
(function(doc) {
|
| 115 | 115 |
var addEvent = 'addEventListener', |
| 116 |
- type = 'gesturestart', |
|
| 117 |
- qsa = 'querySelectorAll', |
|
| 118 |
- scales = [1, 1], |
|
| 119 |
- meta = qsa in doc ? doc[qsa]('meta[name=viewport]') : [];
|
|
| 116 |
+ type = 'gesturestart', |
|
| 117 |
+ qsa = 'querySelectorAll', |
|
| 118 |
+ scales = [1, 1], |
|
| 119 |
+ meta = qsa in doc ? doc[qsa]('meta[name=viewport]') : [];
|
|
| 120 | 120 |
function fix() {
|
| 121 | 121 |
meta.content = 'width=device-width,minimum-scale=' + scales[0] + ',maximum-scale=' + scales[1]; |
| 122 | 122 |
doc.removeEventListener(type, fix, true); |
| 123 | 123 |
} |
| 124 | 124 |
if ((meta = meta[meta.length - 1]) && addEvent in doc) {
|
| 125 | 125 |
fix(); |
| 126 |
- scales = [.25, 1.6]; |
|
| 126 |
+ scales = [0.25, 1.6]; |
|
| 127 | 127 |
doc[addEvent](type, fix, true); |
| 128 | 128 |
} |
| 129 | 129 |
}(document)); |