lesson.js 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <!-- Licensed under a BSD license. See license.html for license -->
  2. (function($){
  3. var log = function(msg) {
  4. return;
  5. if (window.dump) {
  6. dump(msg + "\n");
  7. }
  8. if (window.console && window.console.log) {
  9. console.log(msg);
  10. }
  11. };
  12. function getQueryParams() {
  13. var params = {};
  14. if (window.location.search) {
  15. window.location.search.substring(1).split("&").forEach(function(pair) {
  16. var keyValue = pair.split("=").map(function (kv) {
  17. return decodeURIComponent(kv);
  18. });
  19. params[keyValue[0]] = keyValue[1];
  20. });
  21. }
  22. return params;
  23. }
  24. $(document).ready(function($){
  25. var g_imgs = { };
  26. var linkImgs = function(bigHref) {
  27. return function() {
  28. var src = this.src;
  29. var a = document.createElement('a');
  30. a.href = bigHref;
  31. a.title = this.alt;
  32. a.className = this.className;
  33. a.setAttribute('align', this.align);
  34. this.setAttribute('align', '');
  35. this.className = '';
  36. this.style.border = "0px";
  37. return a;
  38. };
  39. };
  40. var linkSmallImgs = function(ext) {
  41. return function() {
  42. var src = this.src;
  43. return linkImgs(src.substr(0, src.length - 7) + ext);
  44. };
  45. };
  46. var linkBigImgs = function() {
  47. var src = $(this).attr("big");
  48. return linkImgs(src);
  49. };
  50. $('img[big$=".jpg"]').wrap(linkBigImgs);
  51. $('img[src$="-sm.jpg"]').wrap(linkSmallImgs(".jpg"));
  52. $('img[src$="-sm.gif"]').wrap(linkSmallImgs(".gif"));
  53. $('img[src$="-sm.png"]').wrap(linkSmallImgs(".png"));
  54. $('pre>code')
  55. .unwrap()
  56. .replaceWith(function() {
  57. return $('<pre class="prettyprint showlinemods">' + this.innerHTML + '</pre>')
  58. });
  59. if (window.prettyPrint) {
  60. window.prettyPrint();
  61. }
  62. var params = getQueryParams();
  63. if (params.doubleSpace || params.doublespace) {
  64. document.body.className = document.body.className + " doubleSpace";
  65. }
  66. $(".language").on('change', function() {
  67. window.location.href = this.value;
  68. });
  69. });
  70. }(jQuery));