docs.js 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. $(document).ready(function() {
  2. var $api = $('.api');
  3. var $start = $('.start');
  4. var $show = $('.left .show');
  5. var $hide = $('.left .hide');
  6. var width = $(window).width();
  7. var height = $(window).height();
  8. var THRESHOLD = 700;
  9. init();
  10. $(window).on('resize', function() {
  11. width = $(window).width();
  12. height = $(window).height();
  13. init();
  14. });
  15. var hash = window.location.hash;
  16. if (hash === '#start' && width < THRESHOLD) {
  17. hideAPI();
  18. }
  19. function init() {
  20. if (width < THRESHOLD) {
  21. $api.addClass('fullscreen');
  22. $start.addClass('full');
  23. $show.hide();
  24. $hide.hide();
  25. } else {
  26. $start.removeClass('full');
  27. $api.removeClass('fullscreen');
  28. $show.show();
  29. $hide.show();
  30. }
  31. if ($api.attr('class').indexOf('hidden') === -1) {
  32. showAPI();
  33. } else {
  34. hideAPI();
  35. }
  36. }
  37. function hideAPI() {
  38. $api.addClass('hidden');
  39. if (width >= THRESHOLD) {
  40. $start.addClass('full');
  41. $hide.hide();
  42. $show.show();
  43. }
  44. }
  45. function showAPI() {
  46. if (width >= THRESHOLD) {
  47. $start.removeClass('full');
  48. $show.hide();
  49. $hide.show();
  50. }
  51. $api.removeClass('hidden');
  52. }
  53. $('body').on('click', '.left', function() {
  54. if ($api.attr('class').indexOf('hidden') !== -1) {
  55. showAPI();
  56. } else if ($api.attr('class').indexOf('fullscreen') === -1) {
  57. // Now the headers are only links.
  58. hideAPI();
  59. }
  60. });
  61. $('body').on('click', '.right', function() {
  62. hideAPI();
  63. });
  64. $('body').on('click', 'a', function() {
  65. if ($(this).attr('href').indexOf('#') === 0) {
  66. showAPI();
  67. }
  68. });
  69. });