| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148 | $(function() {  $('select[name="document"]').change(function(e){    console.log("document selection",this);    $('iframe').attr('src', this.value);  });  $.getJSON('build/toc.json', function(data){    console.log(data);    for (book in data) {      console.log(data[book]);      // var $optgroup = $('<optgroup>').attr('label', data[book].label);      // for (page of data[book].pages) {      //   // console.log(page);      //   $optgroup.append($('<option>').attr('value', data[book].label+'/'+page.file).text(data[book].label+' : '+page.label));      // }      $('[name="document"]').append(        $('<option>')          .attr('value', data[book].file).text(data[book].label)      );    }    console.log(window.location.hash);    var hash = parseInt(window.location.hash.replace('#',''));    console.log(hash);    var value = $('[name="document"] option:eq('+hash+')').attr('value');    console.log('value', value);    $('[name="document"]').val(value).change();  })  // activate toolbar events when iframe is loaded  $('iframe').load(function() {    initIframe();  });  function initIframe(){    var doc = $("iframe").contents().find("html");    console.log('initIframe :: doc', doc);    $('input[name="preview"]').change(function(e) {      console.log('Preview',e);      if($(this).is(":checked")) {          doc.addClass("preview");          doc.removeClass("normal");      } else {          doc.removeClass("preview");          doc.addClass("normal");      }    });    $('[name="debug"]').change(function() {      if($(this).is(":checked")) {          doc.addClass("debug");      } else {          doc.removeClass("debug");      }    });    $('[name="spread"]').change(function() {        if($(this).is(":checked")) {            doc.addClass("spread");        } else {            doc.removeClass("spread");        }    });    if(spread){        $('[name="spread"]').prop('checked', true).change();    }    //$('[name="hi-res"]').change(function() {        //if($(this).is(":checked")) {            //doc.addClass("export");        //} else {            //doc.removeClass("export");        //}    //});    $('[name="zoom"]').change(function() {        zoomLevel = $(this).val() / 100;        doc.find("#pages").css({            "-webkit-transform": "scale(" + zoomLevel + ")",            "-webkit-transform-origin": "0 0"        });    });    //$(".paper").each(function(){        //page = $(this).attr("id");        //$("#toc-pages").append("<li><a href='#" + page + "'>" + page.replace("-", " ") + "</a></li>")    //});    $('[name="page"]').change(function() {        var pageNumber = $(this).val() - 1;        var target = doc.find('.paper:eq(' + pageNumber + ')');        var offsetTop = target.offset().top;        doc.find('body').scrollTop(offsetTop);    });    $("#print").on('click', function() {        $("iframe").get(0).contentWindow.print();    });  }    //// __________________________________ HIGH RESOLUTION __________________________________ //    //$("#hi-res").click(function(e){        //e.preventDefault();        //$(this).toggleClass("button-active");        //$("html").toggleClass("export");        //$("img").each(function(){            //var hires = $(this).attr("data-alt-src");            //var lores = $(this).attr("src");            //$(this).attr("data-alt-src", lores)            //$(this).attr("src", hires)        //});        //console.log("Wait for hi-res images to load");        //window.setTimeout(function(){            //console.log("Check image resolution");            //// Redlights images too small for printing            //$("img").each(function(){                //if (Math.ceil(this.naturalHeight / $(this).height()) < 3) {                    //console.log($(this).attr("src") + ": " + Math.floor(this.naturalHeight / $(this).height()) );                    //if($(this).parent().hasClass("moveable")) {                        //$(this).parent().toggleClass("lo-res");                    //} else {                        //$(this).toggleClass("lo-res");                    //}                //}            //});        //}, 2000);    //});});//(function($) {    //'use strict';    //$('iframe')[0].addEventListener("load", function(event) {        //console.log(arguments);    //}, false);//})(document.querySelectorAll.bind(document));
 |